最近一直在閱讀張毅剛的《單片機原理及應用》,并模擬仿真書中案例,此次是根據書中提示編寫了通過外部中斷方式實現的模數轉換,由于才疏學淺調試驗證了一個工作日的時間,此時將源碼和原理圖悉數奉上。注:本人起步較晚,今后像從事單片機行業,第一次發帖,請各路朋友多多指教!
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
protues仿真
關鍵部分代碼
單片機源程序如下:- #include <reg51.h>
- #include <intrins.h>
- #define uchar unsigned char
- #define uint unsigned int
- #define LED P0
- #define out P1
- sbit start = P2^1;
- sbit OE = P2^7;
- sbit CLOCK = P2^0;
- sbit add_a = P2^4;
- sbit add_b = P2^5;
- sbit add_c = P2^6;
- sbit EOC = P3^2;
- void main()
- {
-
- EA = 1;
- EX0 = 1;
- IT0 = 0;
-
- add_a = 0;
- add_b = 0;
- add_c = 0;
- while(1)
- {
- start = 0;
- start = 1;
- start = 0;
- while(1)
- {
- CLOCK = !CLOCK;
- if(EOC == 0) break;
- }
- //OE = 1;
- //OE = 0;
- }
- }
- void init0() interrupt 0 using 0
- {
- EX0 = 0;
- OE = 1;
- LED = out;
- OE = 0;
- EX0 =1;
- }
復制代碼
下載:
外部中斷方式實現模數轉換仿真程序.7z
(39.35 KB, 下載次數: 30)
2022-11-26 14:33 上傳
點擊文件名下載附件
|