proteus跑马灯仿真_不花费一分钱,实现跑马灯编程实验
建立仿真工程
初學者學習單片機編程,并不需要去網上買個開發板才能開始編程做實驗,若是想先了解,可以先用proteus仿真軟件來做實驗,Protues軟件具有其它EDA工具軟件的功能。這些功能是:
1.原理布圖
2.PCB自動或人工布線
3.SPICE電路仿真
另外,它可以仿真51系列、AVR、PIC、ARM、等常用主流單片機。還可以直接在基于原理圖的虛擬原型上編程,再配合顯示及輸出,能看到運行后輸入輸出的效果。配合系統配置的虛擬邏輯分析儀、示波器等,Proteus建立了完備的電子設計開發環境。下面用AT89C55單片機外部連接8個LED反光二極管,采用共陰極連接方法。當單片機管腳輸出為0時,LED亮;當管腳輸出為1時,LED滅。
鏈接方法
編程環境
使用Keil 開發編譯環境,首先建立一個新工程,接著建立一個.C文件,如main.c,單片機運行程序入口main(),開始編寫程序代碼。
編程環境
跑馬燈程序代碼
跑馬燈需要一個延時程序,延時子程序調用delay(),然后單片機管腳在不同時段輸出控制LED發光二極管,進行跑馬燈的控制。以下貼上本次實驗代碼。歡迎討論留言!
#include
#include
typedef unsigned char uint08;
typedef unsigned short int uint16;
typedef unsigned long int uint32;
void delay_ms(uint16 ms)
{
uint16 i,j;
for(i=0;i
{
for(j=0;j<255;j++)
{
_nop_();
}
}
}
// 0x01 0x02 0x04
uint08 display1[8] = {0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};
uint08 display2[8] = {0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff};
void main()
{
uint08 i;
uint08 temp;
uint08 ptemp;
// 初始化變量
P2 = 0xff;
ptemp = 0;
while(1)
{
if(ptemp>=8)
{
ptemp = 0;
}
temp = display1[ptemp]; // ??′???ê?ledêyá??ó1μ?×?????
for(i=0;i<8;i++)
{
P2 = ~temp;
temp <<= 1;
delay_ms(200);
}
temp = display2[ptemp];// ??′???ê?ledêyá??ó1μ?×?????
for(i=0;i<8;i++)
{
P2 = ~temp;
temp >>= 1;
delay_ms(200);
}
ptemp++;
}
}
效果圖
總結
以上是生活随笔為你收集整理的proteus跑马灯仿真_不花费一分钱,实现跑马灯编程实验的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 聚合支付有哪些平台
- 下一篇: 微信可以借钱的公众号