為了讓大家充分理解 UART 串口通信的原理,我們先把 P3.0 和 P3.1 當(dāng)做 IO 口來進(jìn)行模擬實際串口通信的過程,原理搞懂后,我們再使用寄存器配置實現(xiàn)串口通信過程。
在硬件上,I2C 總線是由時鐘總線 SCL 和數(shù)據(jù)總線 SDA 兩條線構(gòu)成,連接到總線上的所有器件的 SCL 都連到一起,所有 SDA 都連到一起。
我們知道,打電話的時候,當(dāng)撥通電話,接聽方撿起電話肯定要回一個“喂”,這就是告訴撥電話的人,這邊有人了。同理,這個第九位 ACK 實際上起到的就是這樣一個作用。當(dāng)我們發(fā)送完了這 7 位地址和 1 位方向后,如果發(fā)送的這個地址確實存在,那么這個地址的器件應(yīng)該回應(yīng)一個 ACK(拉低 SDA 即輸出“0”),如果不存在,就沒“人”回應(yīng) ACK(SDA將保持高電平即“1”)。
在向 EEPROM 連續(xù)寫入多個字節(jié)的數(shù)據(jù)時,如果每寫一個字節(jié)都要等待幾 ms 的話,整體上的寫入效率就太低了。因此 EEPROM 的廠商就想了一個辦法,把 EEPROM 分頁管理。24C01、24C02 這兩個型號是 8 個字節(jié)一個頁,而 24C04、24C08、24C16 是 16 個字節(jié)一頁。我們開發(fā)板上用的型號是 24C02,一共是 256 個字節(jié),8 個字節(jié)一頁,那么就一共有 32 頁。
有了 D/A 這個武器,我們就不僅僅可以輸出方波信號了,可以輸出任意波形了,比如正弦波、三角波、鋸齒波等等。以正弦波為例,首先我們要建立一個正弦波的波表。這些不需要大家去逐一計算,可以通過搜索找到正弦波數(shù)據(jù)表,然后可以根據(jù)時間參數(shù)自己選取其中一定量數(shù)據(jù)作為我們程序的正弦波表
STC12C5A60S2單片機是一款功能比較強大的單片機,在眾多的51系列單片機中,要算國內(nèi)STC 公司的1T增強系列更具有競爭力,因他不但和8051指令、管腳完全兼容,而且其片內(nèi)的具有大容量程序存儲器且是FLASH工藝的,如STC12C5A60S2單片機內(nèi)部就自帶高達(dá)60K FLASH ROM,這種工藝的存儲器用戶可以用電的方式瞬間擦除、改寫。而且STC系列單片機支持串口程序燒寫。
單片機構(gòu)成的多機通信系統(tǒng)中常采用總線型主從式結(jié)構(gòu)。在多個單片機組成的系統(tǒng)中,只允許存在一個主機,其他的就是從機,從機要服從主機的控制,這就是總線型主從式結(jié)構(gòu)。
單片機結(jié)構(gòu)和原理
所謂的“呼吸燈”,就是通過程序控制led燈的閃爍過程,像呼吸一樣有節(jié)奏。有亮度漸變的過程。
LED點陣顯示屏是通過PC機將要顯示的漢字字模提取出來,并發(fā)送給單片機,然后顯示在點陣屏上,主要適用于室內(nèi)外漢字顯示。
數(shù)碼管是靠點亮內(nèi)部的發(fā)光二極管來顯示。一位數(shù)碼管有10個引腳,顯示一個8字需要7個小段,再加上一個小數(shù)點,所以內(nèi)部總共有8個小的發(fā)光二極管,
我用的開發(fā)板是天翔電子的TX-1C,單片機是STC89C52RC。
12864液晶的驅(qū)動和1602的類似,只不過是多了幾個擴展的功能,不如畫圖功能
液晶的操作:1602液晶只能顯示ASCI,今天把1602液晶驅(qū)動起來,液晶操作要比數(shù)碼管簡單
自己做項目碰到和總結(jié)的一個問題,感覺挺有用的,貼出來,讓后來的朋友少走彎路!關(guān)鍵詞:nrf51822? ?hex文件格式詳解? ?flash讀寫 hex文件創(chuàng)建和燒錄引言? ? 答題器項目生產(chǎn)時,需要
先聲明一點,我自己不是高手,也不是大神,只是積累了一點點,想分享一下罷了!還記得那會我在初學(xué)51單片機時,當(dāng)?shù)弥狿89V51系列單片機支持在線仿真、跟蹤代碼時,那是一個興奮啊,無論如何都要弄一個來玩玩
#includesbit P1_0 = P1^0;void Delay(); // 下面引用時一定要和這里的大小寫一致否則會有警告或錯誤void Main(){while (1) // 開始一直循環(huán){P1_0 = 0;Delay(); // 沒有參數(shù)也要加 () 否則會有WarningP1_0 = 1;Delay
單片機DA轉(zhuǎn)換實現(xiàn)正弦波
SMOD:該位與串口通信有關(guān)。SMOD=0; 串口方式1,2,3時,波特率正常。SMOD=1; 串口方式1,2,3時,波特率加倍。GF1,GF0:兩個通用工作標(biāo)志位,用戶可以自由使用。PD:掉電模式設(shè)定位。PD=0 單片機處于正常工作狀態(tài)。PD
單片機中,脈沖計數(shù)與時間之間的關(guān)系十分密切,每輸入一個脈沖,計數(shù)器的值就會自動累加1,而花費的時間恰好是1微秒;只要相鄰兩個計數(shù)脈沖之間的時間間隔相等,則計數(shù)值就代表了時間的流逝;