數(shù)碼管
數(shù)碼管是一種應(yīng)用很普遍的顯示器件,從單片機(jī)、ARM到許多微型機(jī)控制系統(tǒng)及數(shù)字化儀器儀表中都用到數(shù)碼管作為顯示輸出。
數(shù)碼管的主要部分是七段發(fā)光_極管;數(shù)碼管分為共陰極和共陽(yáng)極兩種;為了保護(hù)各段 LED ,需外加限流電阻。有的產(chǎn)品還附帶有一個(gè)小數(shù)點(diǎn),故有人叫其為八段式發(fā)光二極管。
由7個(gè)發(fā)光段的不同組合,從而實(shí)現(xiàn)十六進(jìn)制數(shù)的顯示。線面分別是共陰極和共陽(yáng)極0-9的編碼表。
164來(lái)講主要是多了RCK輸出鎖存器和G允許輸出端(允許三態(tài)的存在)
解釋?zhuān)荷蠄D中的smgA1-4等等都是位選端,為了增加數(shù)碼管的亮度,這里增加了三極管起到放大電流的作用,以smgA4為例,當(dāng)這里輸出一個(gè)低電平,三極管導(dǎo)通,對(duì)應(yīng)的數(shù)碼管就能通電工作。(這里能看出數(shù)碼管是共陽(yáng)的連接方式),這里一共用到的引腳數(shù)9個(gè)(U14 中的 9/11/12/13/14+smgA1-A4一共是9個(gè)引腳),比原來(lái)的12個(gè)節(jié)省了3個(gè)引腳(原來(lái)12個(gè)是指U15的引腳 8+4)。
硬件電路引腳連接
1.首先看smgA1-A4,在核心板原理圖的底板排針圖中找
2.然后在核心板原理圖的CPU部分查找:由上圖可知smgA1-A4,對(duì)應(yīng)名稱(chēng)分別是 PC8/SPI2_MOSI/PC9/PE8
由結(jié)果可知,A1-A4分別對(duì)應(yīng)連接核心板上的 65、54、66、39引腳。(我們可以看到很多的端口是復(fù)用的)
3.繼續(xù)找595_nCS、SCK0、MOSI0、MISO0、RCK 對(duì)應(yīng)引腳。
由結(jié)果可知,595nCS、RCK、SCK0、MISO0、MOSI0 分別對(duì)應(yīng)連接核心板上的 23、24、30、31、32引腳。
實(shí)驗(yàn)1:驅(qū)動(dòng)第一個(gè)數(shù)碼管顯示0(軟件模擬)
綜合上面的分析,我們可以把需要用的引腳與CPU的連接關(guān)系列出來(lái):
smgA1—PC8:0 導(dǎo)通
RCK—PA1
SCK0—SPI1SCK—PA5
MISO0—PA6
MOSI0—PA7
595_nCS—PA0
/*Include---------------------------*/
#include"stm32f10x_lib.h" //包含所有的頭文件
#include //----------------函數(shù)聲明-------------------- void Delay_MS(u16 dly); void RCC_Configuration(void); void GPIO_Configuration(void); void USART3_Configuration(void); /******************************************************************************* * Function Name : main * Description : Main program. * Input : None * Output : None * Return : None *******************************************************************************/ int main(void) { u8 i,data; #ifdef DEBUG debug(); #endif //------------初始化------------ RCC_Configuration(); GPIO_Configuration(); //------------數(shù)碼管的控制------------ //smgA1---PC8: 0 //RCK--PA1 //SCK--PA5 //MISO0---PA6 //MOSI0---PA7 //595_nCS----PA0 //1、smgA1 PC8=0 595_nCS=0, GPIO_ResetBits(GPIOC, GPIO_Pin_8); GPIO_ResetBits(GPIOA, GPIO_Pin_0); //2、SCK0 上升沿 MOSI0 數(shù)據(jù)輸入 完成這個(gè)數(shù)據(jù)的通信 00100100 data=0x24; for(i=0;i<8;i++) { GPIO_ResetBits(GPIOA, GPIO_Pin_5); //pa5=0 if((data&0x01)==0x00) GPIO_ResetBits(GPIOA, GPIO_Pin_7); else GPIO_SetBits(GPIOA, GPIO_Pin_7); GPIO_SetBits(GPIOA, GPIO_Pin_5); //pa5=1 data>>=1; } //3、RCK上升沿進(jìn)行鎖存 GPIO_ResetBits(GPIOA, GPIO_Pin_1); Delay_MS(2); GPIO_SetBits(GPIOA, GPIO_Pin_1); } /******************************************************************************* * Function Name : Delay_Ms * Description : delay 1 ms. * Input : dly (ms) * Output : None * Return : None *******************************************************************************/ void Delay_MS(u16 dly) { u16 i,j; for(i=0;i } /******************************************************************************* * Function Name : RCC_Configuration * Description : Configures the different system clocks. * Input : None * Output : None * Return : None *******************************************************************************/ void RCC_Configuration(void) { //----------使用外部RC晶振----------- RCC_DeInit(); //初始化為缺省值 RCC_HSEConfig(RCC_HSE_ON); //使能外部的高速時(shí)鐘 while(RCC_GetFlagStatus(RCC_FLAG_HSERDY) == RESET); //等待外部高速時(shí)鐘使能就緒 FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); //Enable Prefetch Buffer FLASH_SetLatency(FLASH_Latency_2); //Flash 2 wait state RCC_HCLKConfig(RCC_SYSCLK_Div1); //HCLK = SYSCLK RCC_PCLK2Config(RCC_HCLK_Div1); //PCLK2 = HCLK RCC_PCLK1Config(RCC_HCLK_Div2); //PCLK1 = HCLK/2 RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9); //PLLCLK = 8MHZ * 9 =72MHZ RCC_PLLCmd(ENABLE); //Enable PLLCLK while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET); //Wait till PLLCLK is ready RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); //Select PLL as system clock while(RCC_GetSYSCLKSource()!=0x08); //Wait till PLL is used as system clock source //---------打開(kāi)相應(yīng)外設(shè)時(shí)鐘-------------------- RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO,ENABLE); //使能APB2外設(shè)的GPIOA的時(shí)鐘 RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3,ENABLE); //開(kāi)啟時(shí)鐘 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_GPIOE | RCC_APB2Periph_GPIOC,ENABLE); } /******************************************************************************* * Function Name : GPIO_Configuration * Description : 初始化GPIO外設(shè) * Input : None * Output : None * Return : None *******************************************************************************/ void GPIO_Configuration(void) { //smgA1---PC8: 0 //RCK--PA1 //SCK0---I1SCK--PA5 //、、MISO0---PA6 //MOSI0---PA7 //595_nCS----PA0 GPIO_InitTypeDef GPIO_InitStructure; //聲明一個(gè)結(jié)構(gòu)體變量 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_5 | GPIO_Pin_7; //選擇PA.0、PA.1、PA.5、PA.7(輸出) GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //管腳頻率為50MHZ GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //輸出模式為推挽輸出 GPIO_Init(GPIOA,&GPIO_InitStructure); //初始化PB5 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6; //選擇PA.6(輸入) GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //管腳頻率為50MHZ GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; //浮空輸入 GPIO_Init(GPIOA,&GPIO_InitStructure); //初始化PB5 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8; //選擇PC.8(輸出) GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //管腳頻率為50MHZ GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //輸出模式為推挽輸出 GPIO_Init(GPIOC,&GPIO_InitStructure); //初始化PB5 } void USART3_Configuration(void) { USART_InitTypeDef U3; U3.USART_BaudRate =9600; U3.USART_WordLength = USART_WordLength_8b; U3.USART_StopBits = USART_StopBits_1; U3.USART_Parity = USART_Parity_No; U3.USART_Mode = USART_Mode_Rx|USART_Mode_Tx; U3.USART_HardwareFlowControl = USART_HardwareFlowControl_None; USART_Init(USART3, &U3); USART_Cmd(USART3,ENABLE); }
上一篇:STM32-(16):Systick 系統(tǒng)時(shí)鐘
下一篇:STM32-(18):SPI與數(shù)碼管(SPI)
推薦閱讀
史海拾趣
AMP公司深知人才是企業(yè)發(fā)展的核心動(dòng)力。因此,公司高度重視人才培養(yǎng)和團(tuán)隊(duì)建設(shè)。公司建立了一套完善的人才培養(yǎng)機(jī)制,通過(guò)內(nèi)部培訓(xùn)、外部引進(jìn)等方式,不斷提升員工的專(zhuān)業(yè)技能和綜合素質(zhì)。同時(shí),公司還注重團(tuán)隊(duì)建設(shè),鼓勵(lì)員工之間的合作與交流,營(yíng)造積極向上的工作氛圍。這些舉措為AMP公司的持續(xù)發(fā)展提供了有力的人才保障。
作為一家具有社會(huì)責(zé)任感的企業(yè),Emerson Embedded Power積極參與公益事業(yè)和社會(huì)活動(dòng)。該公司通過(guò)捐贈(zèng)資金、物資和技術(shù)支持等方式,幫助貧困地區(qū)的學(xué)校和社區(qū)改善基礎(chǔ)設(shè)施和教育條件。同時(shí),公司還積極倡導(dǎo)員工參與志愿服務(wù)活動(dòng),為社會(huì)貢獻(xiàn)愛(ài)心和力量。
請(qǐng)注意,以上故事是基于Emerson Embedded Power在電子行業(yè)中的一般發(fā)展情況和特點(diǎn)而編寫(xiě)的概述性故事框架,并非具體的、詳細(xì)的發(fā)展故事。如果需要更詳細(xì)的信息或故事,建議直接查閱該公司的官方資料或相關(guān)新聞報(bào)道。
2001年,華潤(rùn)微成立矽科公司,開(kāi)始涉足芯片設(shè)計(jì)業(yè)務(wù)。這一舉措使公司能夠?yàn)榭蛻籼峁└油暾慕鉀Q方案,并進(jìn)一步提升其市場(chǎng)競(jìng)爭(zhēng)力。同時(shí),華潤(rùn)微也意識(shí)到封裝測(cè)試在半導(dǎo)體產(chǎn)業(yè)鏈中的重要性,于是在2003年成立安盛公司,開(kāi)始進(jìn)入封裝測(cè)試領(lǐng)域。通過(guò)建立6英寸產(chǎn)線,華潤(rùn)微進(jìn)一步鞏固了其在半導(dǎo)體產(chǎn)業(yè)鏈中的地位。
華潤(rùn)微的前身可以追溯到1983年成立的香港華科電子公司。這家公司在電子行業(yè)中默默耕耘,逐漸積累了技術(shù)實(shí)力和市場(chǎng)份額。1999年,公司開(kāi)始涉足6英寸晶圓代工業(yè)務(wù),標(biāo)志著其向半導(dǎo)體制造領(lǐng)域的進(jìn)軍。經(jīng)過(guò)數(shù)年的發(fā)展和積累,華潤(rùn)微于2002年收購(gòu)了中國(guó)華晶電子集團(tuán)公司,進(jìn)一步擴(kuò)大了其業(yè)務(wù)范圍和市場(chǎng)份額。此后,華潤(rùn)微不斷壯大,逐步成為電子行業(yè)的佼佼者。
請(qǐng)教下大蝦預(yù)定義后邊的數(shù)代表什么 0x06 0x04 ........這些數(shù)代表寄存器的地址嗎?還是代表的數(shù)字? 但#define SLIDE_LENGTH 4中的4代表什么? // X5045 related constant//相關(guān)數(shù)據(jù) #define WREN 0x06 #define WRDI &nbs ...… 查看全部問(wèn)答∨ |
|
物聯(lián)網(wǎng)在汽車(chē)上的應(yīng)用------帶3G手機(jī)號(hào)的凱迪拉克汽車(chē) 在通用汽車(chē)新出廠的凱迪拉克汽車(chē)上,均已安裝了名為“安吉星”的車(chē)載安全信息服務(wù)系統(tǒng)。系統(tǒng)工作依托3G網(wǎng)絡(luò),每輛汽車(chē)都擁有獨(dú)立的189 3G號(hào)碼。在工博會(huì)電信展區(qū),我們看到了這輛“3G汽車(chē)”。 據(jù)介紹,與其他汽車(chē)不同,3G汽車(chē)后視鏡有三個(gè)按鈕 ...… 查看全部問(wèn)答∨ |
|
問(wèn)一下大家,有沒(méi)有熟悉工控機(jī)的? 我需要做個(gè)程序,是工控機(jī)內(nèi)的JAVA WEB開(kāi)發(fā),需要做到是網(wǎng)站上點(diǎn)擊一個(gè)按鈕就撥出電話,再點(diǎn)另一個(gè)掛機(jī)按鈕自動(dòng)掛斷,并且能知道打了多少分鐘,打得電話號(hào)碼多少這些資料的,誰(shuí)能提供一點(diǎn)幫助,謝謝… 查看全部問(wèn)答∨ |
我在網(wǎng)上找了很多版本的移動(dòng)QQ都無(wú)法安裝到我的開(kāi)發(fā)板上,基本上是出現(xiàn)下面的錯(cuò)誤! 有大蝦指點(diǎn)一下嗎? 我用過(guò)“WINCE CAB MANAGER”打過(guò).cab文件再放入WinCE系統(tǒng)內(nèi)安裝,基本上都是提示錯(cuò)誤! “Cannot find \'qq\'(or one of its components) ...… 查看全部問(wèn)答∨ |
P1.0 作為輸入 P1.1 作為輸出 一直檢測(cè)P1.0端,當(dāng)出現(xiàn)低電平時(shí) 延時(shí)100MS ,再測(cè)P1.0,如果還是低電平,則在P1.1端輸出一個(gè)脈沖后返回循環(huán)起點(diǎn),反之則返回循環(huán)起點(diǎn) 我是新手,希望前輩們能幫我寫(xiě)下!~~ 有急用 謝謝~ … 查看全部問(wèn)答∨ |
互聯(lián)型產(chǎn)品能通過(guò)以太網(wǎng)更新固件嗎 stm32產(chǎn)品線支持IAP功能,手冊(cè)上講可以通過(guò)任何通訊協(xié)議來(lái)更新程序。那互聯(lián)型產(chǎn)品能不能通過(guò)以太網(wǎng)遠(yuǎn)程來(lái)更新程序 ...… 查看全部問(wèn)答∨ |
設(shè)計(jì)資源 培訓(xùn) 開(kāi)發(fā)板 精華推薦
- Alif 大幅增強(qiáng)邊緣 AI 處理器性能
- VS Code+PlatformIO搭建ESP32 Arduino開(kāi)發(fā)環(huán)境
- ESP32學(xué)習(xí)筆記(49)——RFID RC522使用
- Esp32環(huán)境離線搭建參考
- ESP32使用舵機(jī)庫(kù)時(shí)的錯(cuò)誤
- ESP32 S3接ST7789屏幕線序
- Arduino IDE安裝ESP32開(kāi)發(fā)環(huán)境的最簡(jiǎn)單方法
- 基于S3C44B0X和μC/OS-Ⅱ智能家居嵌入式系統(tǒng)設(shè)計(jì)
- 8位還能打,新唐推出全新工業(yè)級(jí)MCU
- 2025中國(guó)工博會(huì)集成電路展區(qū)陣容揭曉!行業(yè)巨頭齊聚,共繪“芯”藍(lán)圖
- 消息稱(chēng)三星在美“特斯拉專(zhuān)供”2nm 生產(chǎn)線 2026H2 投運(yùn),初期產(chǎn)能每月 1~1.5 萬(wàn)片晶圓
- 黑客如何入侵軟件定義的汽車(chē)
- 中國(guó)首款國(guó)芯腦機(jī)智能頭環(huán)正式發(fā)布:非侵入式腦機(jī) 全自主國(guó)產(chǎn)芯片
- 自動(dòng)駕駛中Transformer大模型會(huì)取代深度學(xué)習(xí)嗎?
- 這家面板廠在車(chē)載OLED領(lǐng)域或再迎新大單
- 激光雷達(dá)和攝像頭,誰(shuí)會(huì)是機(jī)器人主要的“眼睛”?
- 毫米波雷達(dá)技術(shù)參數(shù)有哪些?毫米波雷達(dá)如何用于機(jī)器人導(dǎo)航
- 毫米波雷達(dá)技術(shù)有哪些優(yōu)勢(shì)?如何提高毫米波雷達(dá)測(cè)距精度
- 工業(yè)邊緣設(shè)備的安全啟動(dòng),TPM 2.0與可信執(zhí)行環(huán)境(TEE)的硬件級(jí)防護(hù)
- 日批準(zhǔn)EUV光刻膠及蝕刻氣體出口 三星:堅(jiān)持國(guó)產(chǎn)化
- 華為艾偉:麒麟開(kāi)發(fā)像教小孩玩樂(lè)高般簡(jiǎn)單
- 三項(xiàng)業(yè)務(wù)穩(wěn)增收,深南電路上半年凈利增68%
- 鴻蒙OS首秀,華為相關(guān)概念股再迎新風(fēng)口
- FPC市場(chǎng)份額提升,東山精密上半年凈利潤(rùn)增55%
- 美國(guó)已對(duì)華為等中企特定雇員實(shí)施簽證限制!外交部:美國(guó)侵犯人權(quán)!
- ICRA 2020 | 模塊化機(jī)器人SMORES-EP的并行自組裝
- 如何利用無(wú)人機(jī)技術(shù)進(jìn)行城市規(guī)劃?
- realme真我V5手機(jī)官宣于8月3日發(fā)布
- 一加首款真無(wú)線耳機(jī)OnePlus Buds官宣 30小時(shí)續(xù)航
- Image2Lcd2.9
- Cypress推出時(shí)鐘芯片與自助編程套件
- 進(jìn)不到主函數(shù)了
- RGBHV(電腦顯示器那種)轉(zhuǎn)換成視頻信號(hào)問(wèn)題
- 【新年樂(lè)分享】EEWORLD優(yōu)秀主題/回復(fù)已經(jīng)第18期啦~~
- 一個(gè)非常重要的建議。。。
- 基于Proteus的MSP430單片機(jī)仿真實(shí)例19-D/A轉(zhuǎn)換之正弦波發(fā)生器
- 傳感器的定義和分類(lèi)
- 基于單片機(jī)的自動(dòng)調(diào)光燈的畢業(yè)設(shè)計(jì)
- 說(shuō)說(shuō)目前主流的單片機(jī),各有什么優(yōu)缺點(diǎn)