找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2764|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

IAR stm8s105c6直接操作寄存器的方法點(diǎn)亮 LED0資料

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:290411 發(fā)表于 2018-3-11 15:41 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
單片機(jī)源程序如下:
  1. /* **************************************************
  2. *名稱(chēng):點(diǎn)亮一個(gè)LED
  3. *作者:電子科技協(xié)會(huì)
  4. *日期:2019-03
  5. *描述:本實(shí)驗(yàn)用直接操作寄存器的方法點(diǎn)亮 LED0
  6. *硬件連接:LED0 -> PB0
  7. ******************************************************/

  8. #include "iostm8s105c6.h"        //包含對(duì)應(yīng)芯片型號(hào)的必要頭文件

  9. void delay_ms(unsigned int num)
  10. {
  11.         unsigned int i, j;
  12.         for(i=0;i<num;i++)
  13.                 for(j=0;j<400;j++);
  14. }

  15. void main()
  16. {
  17.         void delay_ms();
  18.         
  19.         PB_DDR = 0x0F;                //將PB0的IO方向設(shè)置為輸出
  20.         PB_CR1 = 0X0F;                //將PB0設(shè)置為推挽輸出模式
  21.         PB_CR2 = 0xF0;                //輸出速度最大為2M
  22.         
  23.         PD_DDR_DDR1 = 0;                //將PB0的IO方向設(shè)置為輸入
  24.         PD_CR1_C11= 1;                //將PB0設(shè)置為上拉輸入模式
  25.         PD_CR2_C21= 0;                //輸出速度最大為2M
  26.         
  27.         while(1)
  28.         {
  29.         if(PD_IDR_IDR1 == 0)
  30.         {
  31.           PB_ODR = 0xF0;
  32.           delay_ms(1000);
  33.         }
  34.         else
  35.           PB_ODR = 0xFF;
  36.         }
  37.         //PB_ODR &= 0xFE;                //PB0輸出低電平,點(diǎn)亮LED
  38.         //while(1);
  39.                         //程序進(jìn)入死循環(huán),停在此處
  40.       
  41. }

復(fù)制代碼

所有資料51hei提供下載:
紅外.rar (211.23 KB, 下載次數(shù): 22)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表