日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

stm8s开发(二) GPIO的使用:点亮LED!

發(fā)布時(shí)間:2025/3/21 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 stm8s开发(二) GPIO的使用:点亮LED! 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

通用輸入輸出口(GPIO)是我們使用單片機(jī)最基本的,主要功能:

● 端口的各個(gè)位可以被單獨(dú)配置

● 可選擇的輸入模式:浮動(dòng)輸入和帶上拉輸入

● 可選擇的輸出模式:推挽式輸出和開(kāi)漏輸出

● 外部中斷可以單獨(dú)使能和關(guān)閉


用戶手冊(cè)上描述:

每一個(gè)端口都有一個(gè)輸出數(shù)據(jù)寄存器(ODR),一個(gè)引腳輸入寄存器(IDR)和一個(gè)數(shù)據(jù)方向寄存器(DDR) 總是同相關(guān)的。控制寄存器1(CR1)和控制寄存器2(CR2)用于對(duì)輸入/輸出進(jìn)行配置。任何一個(gè)I/O引腳可以通過(guò)對(duì)DDR,ODR,CR1和CR2寄存器的相應(yīng)位進(jìn)行編程來(lái)配置。

各種不同配置總結(jié)如下:

配置模式DDRCR1CR2配置模式上拉電阻
輸入000懸浮輸入?OFF
010上拉輸入ON
001中斷懸浮輸入?OFF
011中斷上拉輸入ON
輸出100開(kāi)漏輸出?OFF
110推挽輸出
1x1輸出(最快速度10MHZ)?
xxx真正的開(kāi)漏輸出未采用

這里作為練習(xí)控制3個(gè)LED,分別是PA1,PA2,PD4,都設(shè)置為?推挽輸出?模式。

以下是初始化函數(shù):

  • //CTRL0 PA1
  • //CTRL1 PA2
  • //CTRL2 PD4
  • void GPIO_init(void)
  • {
  • PA_DDR|=0x03;
  • PA_CR1|=0x03;
  • PA_CR2|=0x00;
  • PD_DDR|=0x10;
  • PD_CR1|=0x10;
  • PD_CR2|=0x00;
  • }

  • 需要控制IO口的電平,需要對(duì)于ODR寄存器進(jìn)行修改,讀表可得知1為高電平,0為低電平。

    這里只需要對(duì)相應(yīng)的位進(jìn)行修改數(shù)值。


  • void CTRL0_HIGH(void)
  • {
  • PA_ODR|=0x01;
  • }
  • void CTRL0_LOW(void)
  • {
  • PA_ODR&=0xFE;
  • }
  • void CTRL0_Reverse(void)
  • {
  • PA_ODR^=0x01;
  • }
  • 《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

    總結(jié)

    以上是生活随笔為你收集整理的stm8s开发(二) GPIO的使用:点亮LED!的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。