勇敢的芯伴你玩轉Altera FPGA連載98:基于UART收發(fā)的RTC讀寫(xiě) 特權同學(xué),版權所有 配套例程和更多資料下載鏈接: http://pan.baidu.com/s/1i5LMUUD ![]() 如圖10.43所示,本實(shí)例通過(guò)IIC接口定時(shí)讀取RTC中的時(shí)、分、秒寄存器,同時(shí)將時(shí)、分、秒數據通過(guò)UART發(fā)送到PC上的串口調試助手進(jìn)行實(shí)時(shí)的顯示;此外,PC上的串口調試助手也可以發(fā)送“0xaa+time+minute+second+0x55”這樣的16進(jìn)制字符串來(lái)重設RTC寄存器,重設后立即生效。 ![]() 圖10.43 RTC與UART實(shí)例功能框圖 本實(shí)例模塊劃分如圖10.44所示。 ![]() 圖10.44 RTC與UART實(shí)例模塊層次 連接好下載線(xiàn),給CY4開(kāi)發(fā)板供電(供電的同時(shí)也連接好了UART)。 打開(kāi)Quartus II,進(jìn)入下載界面,將本實(shí)例工程下的cy4.sof文件燒錄到FPGA中在線(xiàn)運行。 打開(kāi)串口調試器后,選擇串口為COM10(我們前面在硬件管理器中新識別到的COM口,實(shí)驗者應以自己電腦識別到的COM口為準),設置波特率為9600,數據位為8,校驗位為None,停止位為1。點(diǎn)擊“打開(kāi)串口”。 注意“接收字符”下面的“十六進(jìn)制”不要勾選。 如圖10.46所示,當我們點(diǎn)擊完“打開(kāi)串口”,其顯示字符就變成了“關(guān)閉串口”。 此時(shí)我們看到“接收字符”下面不斷有時(shí)間地址的一串時(shí)、分、秒信息打印出來(lái)。這組不斷更新的數據就是我們從RTC芯片中讀取的時(shí)間信息。 ![]() 圖10.46 時(shí)間信息接收 本實(shí)例增加了RTC重置功能,如圖10.47所示,當我們以16進(jìn)制格式發(fā)送字符串“aa 09 58 30 55”后,“接收字符”顯示就更新到當前最新的“09:58:30”的時(shí)間開(kāi)始遞增了。 ![]() 圖10.47 時(shí)間信息更新 |