keil 4c语言 百度经验,Keil教程(4)
這個(gè)程序使用了中斷方式編寫串行口輸入/輸出程序,它的功能是將接串行口收到的字 符回送,即再通過串行口發(fā)送出去。
正確輸入源文件、建立工程、編譯連接沒有錯(cuò)后,可進(jìn)行調(diào)試,使用 Keil 自帶的串行
窗口測(cè)試功能是否正確,如果正確,可以進(jìn)行下一步的連機(jī)試驗(yàn)。
為簡(jiǎn)單實(shí)用,我們不借助于其它的硬件,而是讓 PC 機(jī)上的兩個(gè)串口互換數(shù)據(jù),即 COM1 發(fā)送 COM2 接收,而 COM2
發(fā)送則由 COM1 接收,為此,需要做一根連接線將這兩個(gè)串口 連起來,做法很簡(jiǎn)單,找兩個(gè)可以插入 PC 機(jī)串口的 DIN9
插座(母),然后用一根 3 芯線將 它們連起來,連線的方法是:
2——3
3——2
5——5
接好線把兩個(gè)插頭分別插入 PC 機(jī)上的串口 1 與串口 2。找一個(gè) PC 機(jī)上的串口終端調(diào)
試軟件,如串口精靈之類,運(yùn)行該軟件,設(shè)置好串口參數(shù),其中串口選擇 2,串口參數(shù)設(shè)置 為:
19200,n,8,1 其含義是波特率為 19200,無奇偶校驗(yàn),8 位數(shù)據(jù),1 位停止位。 在 Keil 調(diào)試窗口的
command 頁(yè)中輸入:
>mode com1 19200,0,8,1
>assign com1
sout
注意兩行最前面的“>”是提示符,不要輸入,第二行中的“”即“小于”和
“大于”符號(hào),中間的是字母“s”和“input”的前兩個(gè)字母,最后是字母“s”和“output” 的前三個(gè)字母。
第一行命令定義串口 1 的波特率為 19200,無奇偶校驗(yàn),8 位數(shù)據(jù),1 位停止位。第二 行是將串口
1(com1)分配給串行窗口。
全速運(yùn)行程序,然后切換串口精靈,開始發(fā)送,會(huì)看到發(fā)送后的數(shù)據(jù)會(huì)立即回顯到窗口 中,說明已接收到了發(fā)送過來的數(shù)據(jù)。切換到
uVison,查看串行窗口 1,會(huì)看到這里的確接 收到了串口精靈送來的內(nèi)容。
2、從端口送入信號(hào)
程序調(diào)試中如果需要有信號(hào)輸入,比如數(shù)據(jù)采集類程序,需要從外界獲得數(shù)據(jù),由于 Keil
的調(diào)試完全是一個(gè)軟件調(diào)試工具,沒有硬件與之相連,所以不可能直接獲得數(shù)據(jù),為此 必須采用一些替代的方法,例如,某電路用 P1
口作為數(shù)據(jù)采集口,那么可以使用的一種方 法是利用外圍接口,打開 PORT 1,用鼠標(biāo)在點(diǎn)擊相應(yīng)端口位,使其變?yōu)楦唠娖交虻碗娖?#xff0c;
就能輸入數(shù)據(jù)。顯然,這種方法對(duì)于要輸獲得數(shù)據(jù)而不是作位處理來說太麻煩了,另一種方 法是直接在 command 頁(yè)輸入
port1=數(shù)值,以下是一個(gè)小小的驗(yàn)證程序。例 7:
LOOP:?MOV?A,P1
總結(jié)
以上是生活随笔為你收集整理的keil 4c语言 百度经验,Keil教程(4)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何使用DNS反向映射来扫描IPv6地址
- 下一篇: 分享不可不知的CAD经典技巧