基于嵌入式系統的調速學號顯示嵌入式設計報告_第1頁
基于嵌入式系統的調速學號顯示嵌入式設計報告_第2頁
基于嵌入式系統的調速學號顯示嵌入式設計報告_第3頁
基于嵌入式系統的調速學號顯示嵌入式設計報告_第4頁
基于嵌入式系統的調速學號顯示嵌入式設計報告_第5頁
已閱讀5頁,還剩15頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、. . . . 嵌入式系統與應用綜合設計報告實驗項目名稱:基于嵌入式系統的調速學號顯示 院系名稱: * 專業名稱: * 班 級: AP*姓 名: * 學號: * 指導老師: * 成績:完成日期:2013年6月25日摘要本次設計的項目一款基于嵌入式2410裸機開發控制的可調試的數碼管花樣學號的顯示,其中嵌入式芯片3c2410是系統控制的核心,在本次設計中中起到總調度的作用。通過嵌入式芯片3c2410的為主控芯片,通過鍵盤掃描的方式,利用設定的按鍵來控制學號顯示的各種花樣;本次設計最大的亮點是可以通過鍵盤掃描的方式,利用設定的按鍵來調節學號在數碼管中滾動以與全部數碼管切換的速度。本報告簡要的介紹了

2、基于嵌入式裸機開發的設計的可調式數碼管花樣學號顯示的設計原理,并根據系統的基本原理在創維特公司的3c2410嵌入式實驗箱上實現本次設計的各項功能。本次設計主要由以下幾個模塊組成:數碼管模塊、鍵盤掃描模塊以與嵌入式控制模塊。其中數碼管模塊是采用6個共陽極的七段數碼管,低電平有效,通過ASCII碼的形式在設定的數組中分別調出本次設計需要的字母和數字,配合嵌入式裸機的相關程序來驅動數碼管的顯示;本次設計中鍵盤掃描模塊,是通過軟件掃描的方式來識別按鍵的鍵值的,通過識別到的鍵值然后反饋給嵌入式系統,再由嵌入式系統通知數碼管要顯示何種花樣以與花樣的速度的選擇。此外系統還可以設置實現學號顯示花樣的次數、花樣

3、以與快慢的程度。關鍵字:嵌入式技術;按鍵掃描;數碼管顯示;目錄一、設計任務和性能指標.4 1.1設計任務.4 1.2性能指標.4二、設計方案.42.1系統總體設計方案.42.2核心器件與模塊的介紹.5 2.2.1 3c2410嵌入式控制芯片簡介.5 2.2.2 數碼管顯示模塊的簡介.6 2.2.3鍵盤掃描模塊的簡介.7三、硬件設計.73.1 數碼管顯示電路設計.73.2鍵盤掃描電路設計.83.3 設計的效果圖.8 3.3.1學號左移效果圖.8 3.3.2學號右移效果圖.9 3.3.3學號切換效果圖.10四、軟件設計.104.1學號左移的程序設計.104.2學號右移的程序設計.124.3學號切換

4、的程序設計.134.4設計掛載的頭文件.14五、課程設計體會.14六、鳴.14七、設計的主程序.151、 設計任務和性能指標 1.1 設計任務 設計一款基于嵌入式裸機操作控制的調速學號顯示,其中嵌入式芯片3c2410是本次設計的核心,用于接收來自鍵盤掃描的信號,從而來判斷學號顯示的花樣是按鍵1的花樣、按鍵2的花樣還是按鍵3的花樣;再通過按鍵掃描的方式繼續掃描是否有加減速鍵按下,有的話在花樣的基礎上實現加減速。 1.2 性能指標1、鍵盤的掃描是采用軟件掃描的方式,降低開發成本。 2、對學號顯示模式精確控制,可以實現學號的左移、右移、全部數碼管的切換顯示。 3、程序編寫簡練、采用模塊化封裝、可移植

5、性強。2、 設計方案 2.1 系統總體設計方案 本次設計的系統主要由以下的幾個模塊組成:數碼管顯示模塊、鍵盤掃描模塊以與嵌入式系統控制模塊。這些模塊中嵌入式系統控制模塊是控制的核心,是完成接收鍵盤鍵值,來判斷學號顯示花樣以與加減速的中樞?;谇度胧较到y的調速學號顯示的設計系統框圖如下所示:yes是否有鍵按下判斷按鍵按鍵3?按鍵2?按鍵1?yesyesyes左移右移切換顯示按鍵8?按鍵7?按鍵7?按鍵8?按鍵7?按鍵8?yesyesyesyesyesyes減速加速加速減速加速減速 基于嵌入式系統的調速學號顯示的設計系統框圖(圖1)2.2核心器件與模塊的介紹 本系統設計所使用的核心器件如下:3c2

6、410嵌入式控制芯片、數碼管顯示模塊、鍵盤掃描模塊。2.2.1 3c2410嵌入式控制芯片簡介S3C2410X 微處理器是一款由 Samsung Electronics Co.,Ltd.為手持設備設計的低功耗、高度集成的基于 ARM7TDMI 核的微處理器。為了降低系統總成本和減少外圍器件,這款芯片中還集成了下列部件:16KB 指令 Cache、16KB 數據 Cache、MMU、外部存儲器控制器、LCD 控制器(STN 和 TFT)、NAND Flash 控制器、4 個 DMA通道、3 通道 UART、1 個 I 2 C 總線控制器、1 個 IIS 總線控制器,以與 4 通道 PWM 定時器

7、和一個部定時器、通用 I/O 口、實時時鐘、8 通道 10 位 ADC 和觸摸屏接口、USB 主、USB 從、SD/MMC 卡接口等?,F在它廣泛應用于 PDA、移動通訊、路由器、工業控制等。 2.2.2 數碼管顯示模塊的簡介用數碼管除了可以顯示09的阿拉伯數字外,還可以顯示一些英語字母。數碼管由7段顯示輸出,利用7個位的組合輸出,就可以形成部分英語字母和09十個數字的顯示。本次設計的開發箱的七段數碼管共陽極,所以低電平有效。數字與字母對應的七段顯示關系和相應的進制關系,本次設計要顯示的學號為AP1035255。七段數碼管對應字母圖為:表1、數字與字母對應的七段顯示關系和相應的進制關系abcde

8、fg二進制十進制十六進制清屏11111111111 1111277FA00010000001 0000808P00110000011 0002418110011111001 111794F000000010000 0010101300001100000 1100606501001000100 1003636201001000100100362450100001010010036365010000101001003636 2.2.3鍵盤掃描模塊的簡介實現鍵盤有兩種方案:一是采用現有的一些芯片實現鍵盤掃描;再就是用軟件實現鍵盤掃描。目前有很多芯片可以用來實現鍵盤掃描,但是鍵盤掃描的軟件實現方法有助

9、于縮減系統的重復開發成本,且只需要很少的 CPU 開銷。嵌入式控制器的功能很強,可以充分利用這一資源,這里就介紹一下軟鍵盤的實現方案:本次設計實現的是 4×4 的矩陣鍵盤掃描。分別將每一列置零,如果這時有鍵按下,則對應的行將為低電平,將得到的結果放到一個變量中,該變量的哪一位為零則對應一個按鍵,如果沒有鍵按下則該變量的值為 0xff。3、 硬件設計 3.1 數碼管顯示電路設計本次設計是在創維特公司的嵌入式實驗箱上做的設計,因此直接調用了該實驗箱的數碼管顯示設計電路。 3.2 鍵盤掃描電路設計本次設計是在創維特公司的嵌入式實驗箱上做的設計,因此直接調用了該實驗箱的4*4鍵盤掃描設計電路

10、。 3.3設計的效果圖 3.3.1學號左移效果圖 學號左移的信號由1號鍵提供,所以要顯示學號的左移必須按下1號鍵按下7號鍵為減速鍵 8號鍵為加速鍵通過按下1號鍵,正常顯示學號左移如下:說明:在按下1號鍵的時候正常顯示左移三次,在移動的同時按下7號鍵為減速鍵,每按一次減少5us,當減少到0的時候,自動默認延時為5us;在移動的同時按下8號鍵為加速鍵,每按下一次增加10us。 3.3.2學號右移效果圖 學號右移的信號由2號鍵提供,所以要顯示學號的右移必須按下2號鍵按下7號鍵為減速鍵 8號鍵為加速鍵通過按下2號鍵,正常顯示學號右移如下:說明:在按下1號鍵的時候正常顯示右移三次,在移動的同時按下7號鍵

11、為減速鍵,每按一次減少5us,當減少到0的時候,自動默認延時為5us;在移動的同時按下8號鍵為加速鍵,每按下一次增加10us。 3.3.3學號切換效果圖 學號切換的信號由3號鍵提供,所以要顯示學號的切換必須按下3號鍵按下7號鍵為減速鍵 8號鍵為加速鍵通過按下3號鍵,正常顯示學號切換如下:說明:在按下1號鍵的時候正常顯示切換三次,在移動的同時按下7號鍵為減速鍵,每按一次減少5us,當減少到0的時候,自動默認延時為5us;在切換的同時按下8號鍵為加速鍵,每按下一次增加10us。4、 軟件設計 4.1學號左移的程序設計/*/ Function name: Left_Display/ Descript

12、ion : 數碼管顯示程序/ Return type: void/ Argument : Left_count : 數碼管對應數據 bit0 - bit5 : SEG0 - SEG5*/int Left_count = 0;int key_vaule,delay_vaule = 40;void Left_Display(void)int i = 0;for(i = 0; i < 6; i+)*(unsigned char *)0x10000006) = (1 << i) & 0x3f;*(unsigned char *)0x10000004) = seg7tableL

13、eft_count; Delay(delay_vaule);key_vaule = Key_GetKeyPoll();if(key_vaule = 0x37)delay_vaule = delay_vaule + 10;if(key_vaule = 0x38)delay_vaule = delay_vaule - 5;if(delay_vaule = 0)delay_vaule = 5;Left_count+;if(Left_count =9)Left_count = 0;4.2學號右移的程序設計/*/ Function name: right_Display/ Description : 數

14、碼管顯示程序/ Return type: void/ Argument : right_count : 數碼管對應數據 bit0 - bit5 : SEG0 - SEG5*/int right_count = 0;void right_Display(void)int i,j=0x20;for(i = 0; i < 6; i+)*(unsigned char *)0x10000006) = (j >> i) & 0x3f;*(unsigned char *)0x10000004) = seg7tableright_count; Delay(delay_vaule);k

15、ey_vaule = Key_GetKeyPoll();if(key_vaule = 0x37) delay_vaule = delay_vaule + 10;if(key_vaule = 0x38)delay_vaule = delay_vaule - 5;if(delay_vaule = 0) delay_vaule = 5;right_count+;if(right_count =9) right_count = 0;4.3學號切換的程序設計/*/ Function name: Qun_Display/ Description : 數碼管顯示程序/ Return type: void/

16、Argument : 0xc0: 數碼管對應全亮 bit0 - bit5 : SEG0 - SEG5*/void Qun_Display(void)int i = 0;for(i = 0; i < 9; i+)*(unsigned char *)0x10000006) = 0xc0;*(unsigned char *)0x10000004) = seg7tablei; Delay(delay_vaule);key_vaule = Key_GetKeyPoll();if(key_vaule = 0x37)delay_vaule = delay_vaule + 10;if(key_vaule

17、 = 0x38)delay_vaule = delay_vaule - 5;if(delay_vaule = 0)delay_vaule = 5;4.4設計掛載的頭文件5、 課程設計體會 經過一個星期的努力,我的基于嵌入式系統的調速學號顯示 的設計終于順利的完成了,通過本次設計,使我對于嵌入式系統與應用這門課程有更深入的了解,也深深的體會到,對于一個技術人員來說,光掌握了書本的知識是遠遠不夠的,實踐是檢驗真理的標準,只要動手做,多動手,才能更好的將掌握的課本知識融會貫通,會以后踏入社會打下一個扎實的基礎。在本次設計中,我也遇到了一些困難,對于創維特公司提供的相關庫函數理解不深,導致在編寫程序實

18、現學號右移的時候,總是出現亂碼和只有一個數碼亮的現象,通過對庫函數的深入閱讀理解和同學的幫助,我順利的解決了這些問題。通過本次設計我覺得作為一名合格的程序員必須加強自己的動手能力,那樣子才能真正的讓自己成為一名高素質的運用型人才。6、 鳴 在本次設計之中遇到了許多問題,在老師的悉心指導下一一得到了解決,通過本學期嵌入式課程的學習,增強我的電子綜合設計能力,在此感老師本學期對我的指導與幫助。7、 設計的主程序/* 包含文件 */#include "def.h"#include "2410lib.h"#include "option.h"

19、#include "2410addr.h"#include "interrupt.h"/* functions */void eint2_isr(void) _attribute_ (interrupt("IRQ");void eint3_isr(void) _attribute_ (interrupt("IRQ");void delay();/* variables */int dither_count2 = 0;int dither_count3 = 0;int a=0;int delay_count = 40

20、;static int nLed = 0x01;/*/ Function name: Main 主函數/ Description : JXARM9-2410 中斷實驗主程序/ 完成功能:/ 外部中斷按鍵引發中斷/ Return type: void/ Argument : void*/void Main(void) unsigned char mask; unsigned char pdata6; mask=0x3f; unsigned char ch = 'a'/* 配置系統時鐘 */ ChangeClockDivider(1,1); / 1:2:4 ChangeMPllVa

21、lue(0xa1,0x3,0x1); / FCLK=202.8MHz /* 中斷初始化 */ Isr_Init(); /* 初始化端口 */ Port_Init(); /* 初始化串口 */ Uart_Init(0,115200); Uart_Select(0);/* 請求中斷 */Irq_Request(IRQ_EINT3, eint3_isr); /* 使能中斷 */ Irq_Enable(IRQ_EINT3); dither_count2 = 0; dither_count3 = 0; while(1) delay(10); unsigned char ch;ch = Key_GetKeyPol

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論