單片機課程設計遙遙棒
A. 單片機課程設計,必須使用單片機完成,怎麼設計啊
想以後從事於單片機,大學中完成這個課程應該是最基本的考驗一課程,
我並不推薦用51系列,因為arm m3使用JTAG調試起來更方便一些,其它有帶語音存儲器帶液晶驅動的功能單片機,性價比很高,開發起來也是非常容易,型號很偏資料少,新手只是做課程來學習的就不考慮這些單片機呢,
首先說一下你的硬體上怎麼做,這個電路圖,參考,郭天祥的(新概念單片機ISD4004語音晶元去畫),1602那本書上面都有,鍵盤,喇叭,書都有了,郭天祥的《十天學會單片機》視頻除了ISD系列語音晶元代碼沒有一句一句講解外,其它每句都進行了講解,ISD4004是在他的教程書裡面講的,跟你上面的ISD是一個公司的,都有源代碼,做好之後,把驅動調好之後,源碼自己復制上去就行了,沒有人比天祥一句一句解釋的更詳細,
考慮系統實現,做8個按鍵分別對應8個站台,按下1~8中的一個按鍵播放1~8站台的聲音,聲音文件讓淘寶的店家幫你想錄得文件燒錄到語言晶元中,聲音文件不要想的太復雜,對於程序員來說,錄好的聲音,只需要調用就好,就相當於調用8個函數那樣簡單,按鍵的設計很多種,這個只是最容易理解的一種,
你們所做的這個公交報站系統,在實際項目中只是很小一步很,想貼近於真正開發,就需要增加GPS模塊,淘寶上買,也有源代碼,公交系統還有一個後台監控程序,用VC++開發一個圖形化界面,(ARM9)WinCE系統中圖形畫,顯示公交的站台信息,
B. 單片機課程設計 貌似很簡單 我就是弄不會 求一高手給我弄一下
給我200元我幫你做
C. 單片機課程設計,請大家幫忙~~~
首先先判斷按鍵。。。用一個寄存器來放按鍵的值
舉個例子吧。
比如R3放按鍵數
當按下第一次時,CJNE
R3,#1,AA
AA程序就是你要執行了第一個L1閃的程序。。。
這個應該懂了吧
D. 單片機課設
這個,網上有很多資料,修改下就可以
E. 單片機課程設計,急求!!!
#defineLCD1602_FLAG
#defineLCD1602_PORTP0
#include<reg51.h>
#include<stddef.h>
#defineucharunsignedchar
sbitlcd1602_rs=P2^0;
sbitlcd1602_e=P2^2;
sbitlcd1602_rw=P2^1;
sbitlcd1602_busy=P0^7;
ucharstr[]="ThisisKeyTest";
ucharkeyval,keystr[16];
voiddelay(uchara)
{
uchari;
while(a--)for(i=0;i<120;i++);
}
/*
************************************
*函數名稱:lcd1602_CheckBusy()
*函數功能:狀態查詢
************************************
*/
voidlcd1602_CheckBusy()
{
do
{
lcd1602_busy=1;
lcd1602_rs=0;
lcd1602_rw=1;
lcd1602_e=0;
lcd1602_e=1;
}
while(lcd1602_busy);
}
/*
***************************************
*函數名稱:lcd1602_WriteCmd()
*函數功能:寫命令
*入口參數:命令字
*出口參數:無
***************************************
*/
voidlcd1602_WriteCmd(constucharcmd)
{
lcd1602_CheckBusy();
lcd1602_rs=0;
lcd1602_rw=0;
lcd1602_e=1;
LCD1602_PORT=cmd;
lcd1602_e=0;
}
/*
*******************************************
*函數名稱:lcd1602_WriteData()
*函數功能:寫數據
*入口參數:c--待寫數據
*出口參數:無
*********************************************
*/
voidlcd1602_WriteData(constucharc)
{
lcd1602_CheckBusy();
lcd1602_rs=1;
lcd1602_rw=0;
lcd1602_e=1;
LCD1602_PORT=c;
lcd1602_e=0;
}
/*
***********************************************
*函數名稱:lcd1602_Init()
*函數功能:初始化LCD
*入口參數:無
*出口參數:無
***********************************************
*/
voidlcd1602_Init()
{
lcd1602_WriteCmd(0x38); //顯示模式為8位2行5*7點陣
lcd1602_WriteCmd(0x0c);//displayenable,flagenable,flashenable,
lcd1602_WriteCmd(0x06);//flagmovetoright,screendon'tmove
lcd1602_WriteCmd(0x01);//clearscreen
}
/*
************************************************
*函數名稱:lcd1602_Display()
*函數功能:字元顯示
*入口參數:ptr--字元或字元串指針
*出口參數:無
*說明:用戶可通過以下方式來調用:
*1)lcd1602_Display("Hello,world!");
*2)INT8U存儲類型txt[]="要顯示的字元串";
*或者INT8U存儲類型txt[]={'t','x','t',..,'