|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
51單片機(jī)主程序怎么編呀? |
| 作者:batiafu 欄目:單片機(jī) |
剛剛接觸單片機(jī),不知道一個(gè)完整的程序是怎樣的,包括幾部分. 51的初始化怎樣寫呢? 有沒有單片機(jī)控制的直流調(diào)速方面的完整程序呀? |
| 2樓: | >>參與討論 |
| 作者: novar 于 2005/5/20 12:31:00 發(fā)布:
看書,入門資料很多 |
|
| 3樓: | >>參與討論 |
| 作者: micros 于 2005/5/20 13:52:00 發(fā)布:
51的程序在網(wǎng)上到處是,看看就知道 最簡(jiǎn)單的程序 ORG 0000H AJMP 0030H ;30H內(nèi)的留地址給中斷用 ORG 0030H ;主程序開始 MAIN: NOP ;你的主程序 AJMP MAIN END ;結(jié)束 |
|
| 4樓: | >>參與討論 |
| 作者: 南方的老樹 于 2005/5/20 16:16:00 發(fā)布:
一個(gè)匯編語言程序框架和功能 ;+=========================================================+ ;| 8051 偽指令定義 | ;+=========================================================+ WDI EQU 097H ;定義看門狗的清除標(biāo)志 ;+=========================================================+ ;| 8051 中斷處理程序入口 | ;+=========================================================+ ORG 0000H ;程序開始 LJMP main ;跳轉(zhuǎn)主程序 ORG 0003H ;外部中斷int0的中斷入口 LJMP EI0_ISR ;跳轉(zhuǎn)定時(shí)器INT0中斷服務(wù)子程序 ORG 000BH ;定時(shí)器t0的中斷入口 LJMP T0INT ;跳轉(zhuǎn)定時(shí)器0中斷服務(wù)子程序 ORG 0013H ;外部中斷int1的中斷入口 LJMP EI1_ISR ;跳轉(zhuǎn)定時(shí)器INT1中斷服務(wù)子程序 ORG 0023H ;串口中斷入口 LJMP INTERS ;跳轉(zhuǎn)串口中斷服務(wù)子程序 ;+=========================================================+ ;| 8051 主程序 | ;+=========================================================+ ORG 100H ;主程序從地址100H開始執(zhí)行 ;+=========================================================+ ;| 8051 定時(shí)器、外部中斷、串口配置 | ;+=========================================================+ main: MOV SP,#70H ;設(shè)置堆棧,以下是單片機(jī)初始化 MOV TMOD,#21H ;設(shè)置定時(shí)器1和串行接口 MOV TL1,#0FDH ;參數(shù)9600波特率,時(shí)鐘11.0592MHZ MOV TH1,#0FDH SETB TR1 ;啟動(dòng)定時(shí)器1中斷 MOV SCON,#50H ;啟動(dòng)串口口控制寄存器 SETB ES ;啟動(dòng)串口中斷 SETB ET0 ;啟動(dòng)定時(shí)器t0中斷 CLR IT0 ;選擇外部中斷0為低電平觸發(fā) CLR IT1 ;選擇外部中斷1為低電平觸發(fā) SETB EX0 ;啟動(dòng)外部中斷0 SETB EX1 ;啟動(dòng)外部中斷1 MOV TH0,#0B1H ;設(shè)置定時(shí)器0參數(shù) MOV TL0,#0E0H CLR RS0 ;設(shè)置寄存器區(qū)基本參數(shù) CLR RS1 SETB TR0 ;啟動(dòng)定時(shí)器0中斷 SETB IP.4 ;設(shè)置中斷優(yōu)先級(jí),串口中斷為最高 CLR IP.1 ;設(shè)置定時(shí)器0優(yōu)先級(jí),低于串口中斷 SETB EA ;啟動(dòng)全部中斷 ;+=========================================================+ ;| 8051 主流程 | ;+=========================================================+ L01: CPL WDI ;對(duì)看門狗取反 SJMP L01 ;主程序流程結(jié)束 ;+=========================================================+ ;| 定時(shí)器0中斷服務(wù)子程序 | ;+=========================================================+ T0INT: CPL P1.0 ;對(duì)P1.0取反,設(shè)置定時(shí)器中斷到的標(biāo)志 ;在示波器上可以看到方波 &n |
|
| 5樓: | >>參與討論 |
| 作者: gqwmcs51 于 2005/5/22 18:50:00 發(fā)布:
老樹是個(gè)熱心人 |
|
| 6樓: | >>參與討論 |
| 作者: 南方的老樹 于 2005/5/22 19:04:00 發(fā)布:
這個(gè)是現(xiàn)成的,不算啥 其實(shí)單片機(jī)就是幾個(gè)關(guān)鍵的技術(shù)點(diǎn),我的看法是,把中斷處理好了,剩下的都是工作量,代碼慢慢編吧。 當(dāng)時(shí)我編程序,沒有仿真器。 現(xiàn)在有了仿真器,我也不編了。 |
|
| 7樓: | >>參與討論 |
| 作者: eleven11 于 2005/5/22 19:11:00 發(fā)布:
單片機(jī)入口還是不難得 單片機(jī)入口還是不難得,往往找到方向,一下就入門了 我當(dāng)年看北航那本厚厚得書,看了幾天混不知道是什么,后來網(wǎng)上下了平凡得PDF,3天就入門了,到寫第一個(gè)電子鐘程序從學(xué)到寫就花了2星期 不過要精通可就難了 |
|
| 8樓: | >>參與討論 |
| 作者: 飛 于 2009/7/19 11:03:27 發(fā)布:
那不用匯編語言,用C語言呢? |
|
|
|
| 免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |