|
(主要是介紹crontab)
差不多用了三天時(shí)間,這個(gè)目標(biāo)算是完成了。
PC端執(zhí)行兩步:1、按照一定的頻率檢查郵箱,如果收到有命令的郵件,將命令摘取出來(lái),同時(shí)將該郵件從服務(wù)器刪除(當(dāng)然,前提是已經(jīng)聯(lián)了網(wǎng));2、依照接收到的命令,通過(guò)串口向單片機(jī)發(fā)送對(duì)應(yīng)的指令。
相應(yīng)的,PC端的編程也得解決兩個(gè)問(wèn)題:從服務(wù)器查看郵件并獲取命令、向單片機(jī)發(fā)送指令。這兩個(gè)問(wèn)題均可用幾乎無(wú)所不能的python解決。
剩下的就是按照一定的頻率定時(shí)執(zhí)行寫好的腳本了。介紹一下crontab。
crontab命令常見于Unix和類Unix的操作系統(tǒng)之中,用于設(shè)置周期性被執(zhí)行的指令。該命令從標(biāo)準(zhǔn)輸入設(shè)備讀取指令,并將其存放于“crontab”文件中,以供之后讀取和執(zhí)行。通常,crontab儲(chǔ)存的指令被守護(hù)進(jìn)程激活, crond常常在后臺(tái)運(yùn)行,每一分鐘檢查是否有預(yù)定的作業(yè)需要執(zhí)行。這類作業(yè)一般稱為cron jobs。
crontab文件包含送交cron守護(hù)進(jìn)程的一系列作業(yè)和指令。每個(gè)用戶可以擁有自己的crontab文件;同時(shí),操作系統(tǒng)保存一個(gè)針對(duì)整個(gè)系統(tǒng)的crontab文件,該文件通常存放于/etc或者/etc之下的子目錄中,而這個(gè)文件只能由系統(tǒng)管理員來(lái)修改。
crontab文件的每一行均遵守特定的格式,由空格或tab分隔為數(shù)個(gè)領(lǐng)域,每個(gè)領(lǐng)域可以放置單一或多個(gè)數(shù)值。
如圖,檢查電子郵件的腳本位于/home/qianchen文件夾內(nèi),‘*/’表示頻率,與m對(duì)其,表示沒分鐘運(yùn)行一次。由于,crond每隔一分鐘檢查一次crontab,貌似最小間隔時(shí)間也只能達(dá)到一分鐘。
設(shè)置妥當(dāng)之后,就算是完成了。將單片機(jī)連接在usb口,向郵箱里發(fā)送包含不同命令的郵件,單片機(jī)便會(huì)執(zhí)行相應(yīng)的動(dòng)作。
|
|