A. 求:單片機C51課程設計(花樣走馬燈)
#include "reg51.h"
#include "intrins.h"
/*我設計的高電平有效,延時時間大概1s,你可以自己改 */
/*我沒編譯的,很久沒編單片機程序了,隨手之作 */
/*電路:單片機最小系統+三極體驅動 */
#define uchar unsigned char
#define uint unsigned int
sbit Led=P1;
void delay(void);
void main(void)
{
unsigned char tmp,k,i,j;
P1=0x00;//全熄滅
while(1)
{
for(i=0;i<8;i++)//左移
{
tmp=0x01;
tmp=(tmp<<i);
P1=tmp;
delay();
}
P1=0x00;
delay();
for(i=0;i<8;i++)//右移
{
tmp=0x80;
tmp=tmp>>i;
P1=tmp;
delay();
}
P1=0x00;
delay();
for(i=0;i<4;i++)//兩邊向中間點亮
{
j=0x01;
k=0x80;
tmp=(j<<i)|(k>>i);
P1=tmp;
delay();
}
P1=0x00;
delay();
for(i=0;i<4;i++)//中間向兩邊點亮
{
j=0x08;
k=0x09;
tmp=(j>>i)|(k<<i);
P1=tmp;
delay();
}
}
}
void delay(void) //誤差 0us
{
unsigned char a,b,c;
for(c=167;c>0;c--)
for(b=171;b>0;b--)
for(a=16;a>0;a--);
_nop_; //if Keil,require use intrins.h
}
//兄弟給分呀,我需要贊同更需要分。謝謝!
B. 51單片機課設
可以做一個溫度檢測回報跟風扇控制的,既有AD(溫度檢測),也有DA(驅動風扇),顯示(顯示數值),鍵盤(設置風扇啟動點及停止點)通訊(回傳溫度)都有用到
C. 利用51單片機,4個數碼管設計一個計時器,要求在數碼管上顯示的數據從0開始每1秒鍾加1。
共陽數碼管中斷程序:
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]=
{
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x83,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e};
uint num,a;
uchar ,shi,ge;
void init();
void delay(uint);
void display(uchar,ucharshi,ucharge);
uint fb();
uint fs();
uint fg();
void main()
{
init();
while(1)
{
display(fb(),fs(),fg());
}
}
void init()
{
num=0;
a=0;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
}
void display(uchar,ucharshi,ucharge)
{
P1=0xfd;
P0=table[];
delay(1);
P1=0xfb;
P0=table[shi];
delay(1);
P1=0xf7;
P0=table[ge];
delay(1);
}
void timeoff() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65526-50000)%256;
a++;
if(a%20==0)
{
num++;
if(num==999)
{
num=0;
}
}
}
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
uint fb()
{
=num/100;
return ;
}
uint fs()
{
shi=num%100/10;
return shi;
}
uint fg()
{
ge =num%100%10;
return ge;
}
(3)51單片機課程設計擴展閱讀
2個可編程定時/計數器·5個中斷源,2個優先順序(52有6個)
一個全雙工串列通信口
外部數據存儲器定址空間為64kB
外部程序存儲器定址空間為64kB
邏輯操作位定址功能·雙列直插40PinDIP封裝
單一+5V電源供電
CPU:由運算和控制邏輯組成,同時還包括中斷系統和部分外部特殊功能寄存器;
RAM:用以存放可以讀寫的數據,如運算的中間結果、最終結果以及欲顯示的數據;
ROM:用以存放程序、一些原始數據和表格;
I/O口:四個8位並行I/O口,既可用作輸入,也可用作輸出
T/C:兩個定時/記數器,既可以工作在定時模式,也可以工作在記數模式;
五個中斷源的中斷控制系統;
一個全雙工UART(通用非同步接收發送器)的串列I/O口,用於實現單片機之間或單片機與微機之間的串列通信;
片內振盪器和時鍾產生電路,石英晶體和微調電容需要外接。最佳振盪頻率為6M—12M。
參考資料來源:網路-51單片機
D. 51單片機課程設計要怎麼寫
第一次見有人這樣問!!-
-
自己學單片機都不知道該做什麼啊,看樣子復雜的你是沒指望了,看看書,寫個計算器、萬年歷、變壓器啦什麼的還可以
追問:
我不會啊
回答:
真乾脆!你們老師也沒說題目,就是讓你自己想題目然後設計啊?要是那樣,也不怪乎你會問這種問題
課程設計
的一般要求:
1、
設計任務書
:說明設計的內容,達到什麼程度
2、硬體電路圖:設計硬體
電路板
(若不要求做實物的話,可用protues模擬,但無論如何硬體電路一定要有)
3、
軟體設計
:根據硬體電路開發,去實現要設計的目的。
4、
流程圖
:繪制軟體流程圖(其實,應該是根據先流程圖
再設計
程序的,不過一般具體流程圖都是要根據軟體細化,所以就放在了編程後便..)
5.
設計說明
書:總結是設計的過程
//-----------------------------
一般
單片機
設計的流程就是這樣了,可以根據你們要求具體做哪些....
E. 求51單片機一個簡單的課程設計
這個可以做,
F. 51系列單片機拔河課程設計需要掌握哪幾章知識
要做單片機的課程設計,應該是學完單片機這門課才能做的,總不能一點不學,系裡就讓你們做課設吧。就算是現學現做,靠自學,那也不能只學一兩章就能做,真是想自學還是從頭學起。如果只是為了做課設,那上網搜一下這個題目,模仿做一個好啦。