娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2024年12月29日(星期日)

2020年12月29日 | 智能交通燈控制系統單片機課程設計

發布者:真瓷堂 來源: 51hei關鍵字:智能交通燈  控制系統  單片機 手機看文章 掃描二維碼
隨時隨地手機看文章

圖15 緊急車

4、心得體會

這次交通燈的制作是我學會了不少的東西,首先是proteus和keil的使用。單片機程序的編寫和原理圖的仿真都是在這兩個軟件的運行下才可以進行的。這個實驗最重要的是讓我對51系列的單片機有了更深層次的了解,這一學期開始接觸單片機的時候覺得這是一門極其高深的課程,老師講的什么基本完全不懂,課后看仍舊是一頭霧水。通過交通燈的學習和制作,對單片機有了初步的了解,知道了它的組成、工作原理等等。

在軟件編寫這一塊,開始時遇到了很大的難題,因為兩百行的程序,哪怕有一個錯誤,修改起來也不是十分方便。時常沒有心思去尋找和改正錯誤,所以軟件這一塊花了很大的一部分時間。幾次調試后總算出現“0 warning”和“0 error”的字樣。

除了學會很多東西以為,也發現了自己的不足。由于自己在這一方面只是的短缺,所以很多問題都需要查閱資料或者向別的同學請教。比如說proteus和keil的使用方法,都是看著別人操作幾遍之后才慢慢學會。另外,由于時間問題,沒能做到真正的實物實現,沒有接觸到焊接工作,這一點是十分遺憾的,相信如果做了實物實現,可能還會遇到更多的問題,學習到更多的實踐知識。

慶幸設計模擬結果是成功的,模擬出了交通燈的功能,各個按鍵的功能也和模擬時一致,看著數字的跳動自己信息也感到十分開心。雖然想過在這個交通燈里加入一些額外的功能,但終究由于自己知識的局限性而放棄,有點遺憾,不過能夠學到東西就好。此次試驗增長了自己的單片機知識外也讓我知道實踐和理論學習的差別。實踐過程中學到的知識自己記得會更加牢固一些,不容易忘記。總的來說,單片機的制作讓我收獲不小。


附件2 原理圖

#include

#define uchar unsigned char

#define uint  unsigned int


uchar data buf[4];

uchar data sec_dx = 20;//東西數默認

uchar data sec_nb = 30;//南北默認值

uchar data set_timedx = 20;

uchar data set_timenb = 30;

int n;

uchar data b;//定時器中斷次數

sbit  k1 = P1 ^ 6;//++

sbit  k2 = P1 ^ 7; //--

sbit  k3 = P2 ^ 7;  //確定

sbit  k4 = P3 ^ 0; //切換方向

sbit  k5 = P3 ^ 1; //緊急車

sbit Yellow_nb = P2 ^ 5;        //南北黃燈標志

sbit Yellow_dx = P2 ^ 2;        //東西黃燈標志

sbit Green_nb = P2 ^ 4;

sbit Green_dx = P2 ^ 1;

sbit Red_nb = P2 ^ 6;

sbit Red_dx = P2 ^ 3;

sbit Buzz = P3 ^ 7;

bit Buzzer_Indicate;

bit time = 0;//燈狀態循環標志

bit   set = 1;//調時方向切換鍵標志

uchar code table[11] = {          //共陰極字型碼

        0x3f,  //--0

        0x06,  //--1

        0x5b,  //--2

        0x4f,  //--3

        0x66,  //--4

        0x6d,  //--5

        0x7d,  //--6

        0x07,  //--7

        0x7f,  //--8

        0x6f,  //--9

        0x00   //--NULL

};


//函數的聲明部分

void delay(int ms);//延時子程序

void key();//按鍵掃描子程序

void key_to1();//鍵處理子程序

void key_to2();

void key_to3();

void display();//顯示子程序

void logo();   //開機LOGO

void Buzzer();

//主程序

void main()

{

           TMOD = 0X01;

        /*TH0 = 0XD8;

        TL0 = 0XF0;*/

        TH0 = 0X3C; //1101 1000   50ms

        TL0 = 0XB0;

        EA = 1;

        ET0 = 1;

        TR0 = 1;        //開始

        EX0 = 1;        //外部中斷0請求標志 允許

        EX1 = 1;

        logo();

        P2 = 0Xc3;// 開始默認狀態,東西綠燈,南北黃燈

        sec_nb = sec_dx + 5;

        while (1)

        {

                key(); //調用按鍵掃描程序

                display(); //調用顯示程序

                //Buzzer();

        }

}

//函數的定義部分

void key()        //按鍵掃描子程序

{

        if (k1 != 1)

        {

                delay(10);

                if (k1 != 1)

                {

                        while (k1 != 1)

                        {

                                key_to1(); //時間增加

                                for (n = 0; n < 40; n++)

                                {

                                        display();

                                }

                        }

                }

        }

        if (k2 != 1)

        {

                delay(10);

                if (k2 != 1)

                {

                        while (k2 != 1)

                        {

                                key_to2(); //時間減少

                                for (n = 0; n < 40; n++)

                                {

                                        display();

                                }

                        }

                }

        }

        if (k3 != 1)

        {

                TR0 = 1;   //啟動定時器

                Buzzer_Indicate = 0;

                sec_nb = set_timenb;        //從中斷回復,仍顯示設置過的數值

                sec_dx = set_timedx;

                if (time == 0)

                {

                        P2 = 0X99; sec_nb = sec_dx + 5;

                }

                else { P2 = 0xC3; sec_dx = sec_nb + 5; }

        }

        if (k4 != 1)

        {

                //切換方向

                delay(5);

                if (k4 != 1)

                {

                        while (k4 != 1);

                        set = !set;

                }

        }

        if (k5 != 1)

        {

                delay(5);

                if (k5 != 1)

                {

                        while (k5 != 1)

                                //緊急車

                                key_to3();

                }

        }

}

void display() //顯示子程序

{

        buf[1] = sec_dx / 10; //第1位 東西秒十位

        buf[2] = sec_dx % 10; //第2位 東西秒個位

        buf[3] = sec_nb / 10; //第3位 南北秒十位

        buf[0] = sec_nb % 10; //第4位 南北秒個位               

        P1 = 0xff;                                    // 初始燈為滅的

        P0 = 0x00;

        P1 = 0xfe;                                     //片選LCD1

        P0 = table[buf[1]];

        delay(1);

        P1 = 0xff;

        P0 = 0x00;

        P1 = 0xfd;                              //片選LCD2

        P0 = table[buf[2]];

        delay(1);

        P1 = 0xff;

        P0 = 0x00;

        P1 = 0Xfb;                  //片選LCD3

P0 = table[buf[3]];

delay(1);

P1 = 0xff;

P0 = 0x00;

P1 = 0Xf7;

P0 = table[buf[0]];                  //片選LCD4        

delay(1);

}

void time0(void) interrupt 1 using 1  //定時中斷 定時器0 子程序

{

        Buzz = 1;

        b++;

        if (b == 20)                          // 定時器中斷次數

        {

                     Buzz = 0;

                     b = 0;

                     sec_dx--;

                     sec_nb--;

                     if (sec_nb <= 5 && time == 0)  //東西黃燈閃               

[1] [2]
關鍵字:智能交通燈  控制系統  單片機 引用地址:智能交通燈控制系統單片機課程設計

上一篇:1602的各種顯示效果(靜態 動態 移動 滾動顯示程序)
下一篇:單片機串口收發程序分享

推薦閱讀

2018年,國內新經濟公司在境外資本市場掀起前赴后繼的IPO大潮。無論是美團點評、小米這些互聯網行業老兵,還是充滿爭議的拼多多和趣頭條們,都選擇在港股或者美股敲響自己的資本鐘聲。這其中,境外資本市場相對更寬松的上市政策、融資需求的日益緊迫等都成為新經濟公司境外IPO的催化劑。新經濟公司的IPO看起來應該是一場皆大歡喜的喜劇。公司商業模式獲得...
日媒稱,人口日益老齡化,對具體幫助的需求日益增多,但缺乏提供幫助的資金和看護人。日本的豐田汽車公司認為,它們能解決這個問題。 12月19日報道,18日,在東京國際機器人展覽會上,該公司的款類人機器人T-HR3由一名人類操作員遙控。 該機器人提供的眼鏡可以讓操作員看到機器人所見之物,手套讓他們感覺到機器人所觸摸之物——這足以讓操作員通過機...
12月28日晚,小米舉行了小米11 新品發布會,正式發布了小米11。在外觀方面,小米11重量僅196g,厚底為8.06mm,采用AG磨砂玻璃工藝,配備雙揚聲器出音孔。小米集團創始人、董事長兼CEO雷軍介紹,小米11是驍龍888全球首發。驍龍888采用CPU“1+3+4”架構,擁有X1超大核,A78最新一代大核架構,GPU性能升級35%,AI引擎算力高達26TOPS,采用X60第三代5G芯片方...
今年年初,谷歌推出了直接在 Android 設備上跟蹤關鍵關鍵信息的功能。現在,iPhone 上的 Fit 已經悄然獲得了同樣的功能,只需使用相機就可以測量你的心跳和呼吸頻率。  測量心率時,首先將手指放在后置攝像頭的鏡頭上并輕壓。你可以選擇打開閃光燈從而提高在黑暗環境中的準確度,或者你可以把你的手 (和手機) 放在光源前。  谷歌正在...

史海拾趣

問答坊 | AI 解惑

如何在miniGUI程序中控制電機轉動(菜問題,表笑我,呵呵)

電機有自己的驅動程序,gpio_drv.c 畫了一個窗口,在窗口過程函數中可以直接調用驅動程序中的函數嗎? 如: 在MSG_COMMAND消息中,是否可以這樣做:   case IDSTART:        write_gpio_bit(GPIO_MODE_OUT | G ...…

查看全部問答∨

nios 2 開發

我將生成的elf 文件下載到板上的過程中出現如圖的錯誤 我該如何去解決 謝謝…

查看全部問答∨

用圖片教你識別各種電子器件

用圖片教你識別各種電子器件,很不錯,從最簡單的電阻 電容 到復雜的引腳眾多的IC芯片,蠻實用的。允許我賺點小錢啊,多多包涵。。。      …

查看全部問答∨

杭州盈天科學儀器有限公司誠聘

誠聘電子設計師一名。 要求:①.大專以上學歷,電子類相關專業; ②.三年以上電子電路設計經驗; ③.熟悉單片機開發、匯編語言,熟練使用protel、cad等相關設計軟件,精通模擬和數字電路,了解常用電子元器件的性能及特性; ④.能獨立開發設計電路 ...…

查看全部問答∨

430循跡程序

#include<msp430g2553.h> #define TR_1_H        P1IN|=BIT1      //P1.1 #define TR_1_L        P1IN&=~BIT1     //P1.1 #define ...…

查看全部問答∨

關于二期學生培訓視頻的放出(不斷更新中)

大家好: 第二期學生的全免費培訓已經正式開始,這一期的培訓視頻也是全部免費的除了周末外視頻可能會不定時更新,敬請大家以后多關注。 以下是這一期的培訓視頻: 免費視頻地址為: http://pan.baidu.com/share/link?shareid=484506&uk=18461 ...…

查看全部問答∨

【lpc11u34 ADC讀取的值總是0x3ff】

我使用ZLG提供的實例代碼去調試ADC,PIO0_11引腳接可調電源,通過可調電源來改變模擬電壓值,但是,不管我怎么改變電壓值,讀取出來的AD轉換值總是0x3ff,IC的VDD為固定3.3V。 代碼如下: uint32_t  ulADCBuf; uint32_t  ADC ...…

查看全部問答∨

vb或#的usb hid上位機程序誰有?

6.0的好,C#還沒學會,打算學…

查看全部問答∨

匯編ORG問題

請問 ORG 0x0000h JMP  main 和 ORG 0X000h DC16  mian 是一樣的嗎?能有大神幫解釋一下嗎?…

查看全部問答∨

電子設計必看書籍推薦---電子產品設計EMC風險評估

電磁兼容,不但是作為一門研究和解決電子設備,系統自身及其與周圍電磁環境無干擾問題的綜合性學科,更重要的是作為一項應用性極強的工程技術,在民用和軍用電子產品的設計、測試、制造、應用等環節發揮著至關重要甚至是決定性的作用。對于民用產品 ...…

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 崇义县| 玉田县| 当涂县| 剑阁县| 彭山县| 襄垣县| 巴林右旗| 青田县| 六枝特区| 安泽县| 东城区| 保康县| 新兴县| 邓州市| 新和县| 施秉县| 石泉县| 承德市| 济源市| 大名县| 永寿县| 曲阜市| 郯城县| 惠来县| 乐亭县| 富蕴县| 屏东市| 双辽市| 望谟县| 资阳市| 岑巩县| 渝北区| 含山县| 体育| 丰镇市| 奉新县| 赤城县| 兴文县| 沂水县| 涡阳县| 英超|