色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊]

您的位置:電子發(fā)燒友網(wǎng)>電子元器件>數(shù)碼管>

用stm32控制4位數(shù)碼管_stm32控制共陰數(shù)碼管 - 全文

2018年01月16日 17:07 網(wǎng)絡(luò)整理 作者: 用戶評(píng)論(0

1、stm32控制4位共陽數(shù)碼管輸出計(jì)數(shù)

用stm32控制4位數(shù)碼管,需要用到GPIO口 PA0~PA11共12個(gè)引腳。首先我們來看看數(shù)碼管的原理圖。

用stm32控制4位數(shù)碼管_stm32控制共陰數(shù)碼管

用stm32控制4位數(shù)碼管_stm32控制共陰數(shù)碼管

因?yàn)槭枪碴査?2,9,8,6為電源輸入,其他引腳均為接地,所以對(duì)于芯片來說12,9,8,6高位輸出,其他設(shè)定為低位即可。

//設(shè)定下GPIO口

void GPIO_Num_Init(void)

{

GPIO_InitTypeDef GPIO_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);

GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_Init(GPIOA,&GPIO_InitStructure);

}

這里有個(gè)要注意的,根據(jù)原理圖可以看出數(shù)碼管一次只能輸出一位數(shù)組,所以如果是多位的必須使用掃描的方式輸出,縮短切換的間隔,就可以達(dá)到不閃爍的效果。

//輸出封裝

void DisPlayNum(int n)

{

if (n 《 9999)

{ int i;

int s;

s = n;

i=0;

for (i=0;i《4;i++)

{

GPIO_ResetBits(GPIOA,GPIO_Pin_All);

switch (i)

{

case 0:

GPIO_SetBits(GPIOA,GPIO_Pin_5);

break;

case 1:

GPIO_SetBits(GPIOA,GPIO_Pin_7);

break;

case 2:

GPIO_SetBits(GPIOA,GPIO_Pin_8);

break;

case 3:

GPIO_SetBits(GPIOA,GPIO_Pin_11);

break;

}

switch (s % 10)

{

case 0:

GPIO_SetBits(GPIOA,GPIO_Pin_2|GPIO_Pin_4);

break;

case 1:

GPIO_SetBits(GPIOA,GPIO_Pin_2|GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_4|GPIO_Pin_9|GPIO_Pin_10);

break;

case 2:

GPIO_SetBits(GPIOA,GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_9);

break;

case 3:

GPIO_SetBits(GPIOA,GPIO_Pin_2|GPIO_Pin_0|GPIO_Pin_9);

break;

case 4:

GPIO_SetBits(GPIOA,GPIO_Pin_2|GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_10);

break;

case 5:

GPIO_SetBits(GPIOA,GPIO_Pin_2|GPIO_Pin_0|GPIO_Pin_6);

break;

case 6:

GPIO_SetBits(GPIOA,GPIO_Pin_2|GPIO_Pin_6);

break;

case 7:

GPIO_SetBits(GPIOA,GPIO_Pin_2|GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_4|GPIO_Pin_9);

break;

case 8:

GPIO_SetBits(GPIOA,GPIO_Pin_2);

break;

case 9:

GPIO_SetBits(GPIOA,GPIO_Pin_2|GPIO_Pin_0);

break;}

s = s / 10;

delay_ms(1);

if (s==0)

break;}}}

最后main的測試代碼

int count;

int TimeCheck;

int main(void)

{

GPIO_Num_Init();

count =0;

TimeCheck = 0;

while(1)

{

DisPlayNum(count);

TimeCheck++;

delay_ms(5);

if (TimeCheck 》 100){ //每500毫秒+1

TimeCheck=0;

count++;}}}

2、stm32控制共陰數(shù)碼管

共陰數(shù)碼管

#include“stm32f10x.h”

u8table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f};//共陰數(shù)碼管對(duì)應(yīng)的編碼

voiddelayms(u16 time)

{

u16 i=0;

while(time--)

{

i=12000;

while(i--);

}

}

voidInitStm32()

{

GPIO_InitTypeDefGPIO_InitStructure; //定義一個(gè)管腳初始化的結(jié)構(gòu)體

//開啟PA口時(shí)鐘

GPIO_InitTypeDef DuanAndWeiMa;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB,ENABLE);

//配置PAO的模式

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_All;

DuanAndWeiMa.GPIO_Pin=GPIO_Pin_0|GPIO_Pin_1; //為什么要用一杠 0是段碼,1是位碼

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;

DuanAndWeiMa.GPIO_Mode=GPIO_Mode_Out_PP;

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;

DuanAndWeiMa.GPIO_Speed=GPIO_Speed_50MHz;

GPIO_Init(GPIOA,&GPIO_InitStructure);

GPIO_Init(GPIOB,&DuanAndWeiMa);

}

intmain(void)

{

InitStm32();

while(1)

{

GPIO_SetBits(GPIOB,GPIO_Pin_1);

GPIO_Write(GPIOA,0xfe); //問題是:第8個(gè)數(shù)碼管控制不了,一直顯示的是8

GPIO_ResetBits(GPIOB,GPIO_Pin_1);

GPIO_SetBits(GPIOB,GPIO_Pin_0);

GPIO_Write(GPIOA,table[0]);

GPIO_ResetBits(GPIOB,GPIO_Pin_0);

delayms(2);

GPIO_SetBits(GPIOB,GPIO_Pin_1);

GPIO_Write(GPIOA,0xfd);

GPIO_ResetBits(GPIOB,GPIO_Pin_1);

GPIO_SetBits(GPIOB,GPIO_Pin_0);

GPIO_Write(GPIOA,table[1]);

GPIO_ResetBits(GPIOB,GPIO_Pin_0);

delayms(2);

GPIO_SetBits(GPIOB,GPIO_Pin_1);

GPIO_Write(GPIOA,0xfb);

GPIO_ResetBits(GPIOB,GPIO_Pin_1);

GPIO_SetBits(GPIOB,GPIO_Pin_0);

GPIO_Write(GPIOA,table[2]);

GPIO_ResetBits(GPIOB,GPIO_Pin_0);

delayms(2);

GPIO_SetBits(GPIOB,GPIO_Pin_1);

GPIO_Write(GPIOA,0xf7);

GPIO_ResetBits(GPIOB,GPIO_Pin_1);

GPIO_SetBits(GPIOB,GPIO_Pin_0);

GPIO_Write(GPIOA,table[2]);

GPIO_ResetBits(GPIOB,GPIO_Pin_0);

delayms(2);

}

}

上一頁12全文

非常好我支持^.^

(47) 9.1%

不好我反對(duì)

(471) 90.9%

( 發(fā)表人:金巧 )

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?
      主站蜘蛛池模板: 国模沟沟一区二区三区| 黑人猛挺进小莹的体内视频| 中文字幕在线免费观看视频| 伊人狼人久久精品热9| 伊人精品在线| 337p啪啪人体大胆| 2020年国产精品午夜福利在线观看 | 88蜜桃人妻无码精品系列| 99精品网站| 动漫美女喷水| 国产午夜精品美女免费大片| 久久精品热线免费| 牛牛在线精品视频| 色偷偷7777www| 亚洲精品一二三区区别在哪| 伊人久久久久久久久久| 99精品免费久久久久久久久日本| 抽插的日日液液H| 国产在线观看香蕉视频| 久久这里只有精品2| 拍床戏被肉高H纯肉H在水| 天天躁夜夜踩很很踩2022| 杨幂被视频在线观看| 经典WC女厕所里TV| 久久精品国产首叶| 女人操男人| 特级做A爰片毛片免费69| 亚洲娇小性色xxxx| 91麻豆精品| 国产成人久久AV免费看澳门| 韩国g奶空姐| 欧美激情一区二区三区视频 | 国精一区二区AV在线观看网站| 麻豆高潮AV久久久久久久| 久草色视频| 欧美日韩精品一区二区三区高清视频 | 999久久精品国产| 国产精品成人啪精品视频免费观看| 久草色香蕉视频在线| 日本国产黄色片| 夜色视频社区|