HLK-W801-KIT-V1.1

[复制链接]
 楼主| 34af9uc 发表于 2024-4-22 08:19 | 显示全部楼层 |阅读模式
DA, GPIO, IO, gp, pi, w801
  1. /*************HLK-W801-KIT-V1.1********************/
  2. /*************1.3' OLED IIC************************/
  3. /*************ID:共同学习stm8**********************/
  4. /*************多平台™一切都是运算******************/
  5. /*************20240421*****************************/

  6. //0X0000 GPIO 数据寄存器 GPIO_DATA RW 读写 GPIO 当前数据 0X180B
  7. #define                GPIOA_DATA                        (*(volatile unsigned int*)(0x40011200+0x0000))
  8. //0X0004 GPIO 数据使能寄存器 GPIO_DATA_EN RW 配置 GPIO_DATA 的使能位 0XFFFF
  9. #define                GPIOA_DATA_EN                (*(volatile unsigned int*)(0x40011200+0X0004))
  10. //0X0008 GPIO 方向控制寄存器 GPIO_DIR RW 配置 GPIO 方向 0X0000
  11. #define                GPIOA_DIR                        (*(volatile unsigned int*)(0x40011200+0X0008))
  12. //0X000C GPIO 上拉控制寄存器 GPIO_PULL_EN RW 配置 GPIO 上拉 0XFFFF
  13. #define                GPIOA_PULL_EN                        (*(volatile unsigned int*)(0x40011200+0X000c))
  14. //0X001C GPIO 下拉控制寄存器 GPIO_DN_ENA RW 配置 GPIO 下拉 0X0000
  15. #define                GPIOA_DN_ENA                        (*(volatile unsigned int*)(0x40011200+0X001c))


  16. //0X0000 GPIO 数据寄存器 GPIO_DATA RW 读写 GPIO 当前数据 0X180B
  17. #define                GPIOB_DATA                        (*(volatile unsigned int*)(0x40011400+0x0000))
  18. //0X0004 GPIO 数据使能寄存器 GPIO_DATA_EN RW 配置 GPIO_DATA 的使能位 0XFFFF
  19. #define                GPIOB_DATA_EN                (*(volatile unsigned int*)(0x40011400+0X0004))
  20. //0X0008 GPIO 方向控制寄存器 GPIO_DIR RW 配置 GPIO 方向 0X0000
  21. #define                GPIOB_DIR                        (*(volatile unsigned int*)(0x40011400+0X0008))
  22. //0X000C GPIO 上拉控制寄存器 GPIO_PULL_EN RW 配置 GPIO 上拉 0XFFFF
  23. #define                GPIOB_PULL_EN                        (*(volatile unsigned int*)(0x40011400+0X000c))
  24. //0X001C GPIO 下拉控制寄存器 GPIO_DN_ENA RW 配置 GPIO 下拉 0X0000
  25. #define                GPIOB_DN_ENA                        (*(volatile unsigned int*)(0x40011400+0X001c))


  26. /**************************************************/
  27. //                         _______________________
  28. //                        |        1.3' OLED IIC                |
  29. //                        |        GND|VCC|SCL|SDA                |
  30. //                        |                128*64                        |
  31. //                        |_______________________|
  32. //显示SCL-----PA2
  33. #define                X_SCL_L                GPIOA_DATA        &=~(1<<2)
  34. #define                X_SCL_H                GPIOA_DATA        |=(1<<2)
  35. //显示SDA-----PA1
  36. #define                X_SDA_L                GPIOA_DATA        &=~(1<<1)
  37. #define                X_SDA_H                GPIOA_DATA        |=(1<<1)
  38. /**************************************************/

  39. #define                led1_l                GPIOB_DATA        |=(1<<5)
  40. #define                led1_h                GPIOB_DATA        &=~(1<<5)
  41. #define                led2_l                GPIOB_DATA        |=(1<<25)
  42. #define                led2_h                GPIOB_DATA        &=~(1<<25)
  43. #define                led3_l                GPIOB_DATA        |=(1<<26)
  44. #define                led3_h                GPIOB_DATA        &=~(1<<26)
  45. #define                led4_l                GPIOB_DATA        |=(1<<18)
  46. #define                led4_h                GPIOB_DATA        &=~(1<<18)
  47. #define                led5_l                GPIOB_DATA        |=(1<<17)
  48. #define                led5_h                GPIOB_DATA        &=~(1<<17)
  49. #define                led6_l                GPIOB_DATA        |=(1<<16)
  50. #define                led6_h                GPIOB_DATA        &=~(1<<16)
  51. #define                led7_l                GPIOB_DATA        |=(1<<11)
  52. #define                led7_h                GPIOB_DATA        &=~(1<<11)

  53. /**************************************************/

  54. void                xianshi();                //显示
  55. void                yanshi_1s();        //延时1秒
  56. /**************************************************/
  57. unsigned char                liushui_a1;
  58. /**************************************************/
  59. int main(void)

  60. {
  61. unsigned char                liushui_b1;

  62. GPIOB_DATA_EN                |=(1<<5)+(1<<25)+(1<<26)+(1<<18)+(1<<17)+(1<<16)+(1<<11);                //使能
  63. GPIOB_DIR                        |=(1<<5)+(1<<25)+(1<<26)+(1<<18)+(1<<17)+(1<<16)+(1<<11);                //输出
  64. GPIOB_DATA                        |=(1<<5)+(1<<25)+(1<<26)+(1<<18)+(1<<17)+(1<<16)+(1<<11);                //输出高
  65. /**************************************************/
  66. while (1)
  67. {
  68. liushui_a1                =0x01;
  69. liushui_b1                =7;
  70. while(liushui_b1--)
  71. {
  72. xianshi();                                        //显示       
  73. yanshi_1s();       
  74. liushui_a1                <<=1;                //左移一位
  75. }


  76. }       
  77.     return 0;


  78. }
  79. /**************************************************/
  80. void                xianshi()                //显示
  81. {
  82. if(liushui_a1&0x01){led1_h;}        else{led1_l;}       
  83. if(liushui_a1&0x02){led2_h;}        else{led2_l;}
  84. if(liushui_a1&0x04){led3_h;}        else{led3_l;}
  85. if(liushui_a1&0x08){led4_h;}        else{led4_l;}
  86. if(liushui_a1&0x10){led5_h;}        else{led5_l;}
  87. if(liushui_a1&0x20){led6_h;}        else{led6_l;}
  88. if(liushui_a1&0x40){led7_h;}        else{led7_l;}       
  89. }
  90. /**************************************************/
  91. void                yanshi_1s()        //延时1秒
  92. {
  93. volatile unsigned int                x,y;       
  94.         for(x=1000;x>0;x--)
  95.                 for(y=2500;y>0;y--);
  96. }
  97. /**************************************************/
  98. /**************************************************/
  99. /**************************************************/
  100. /**************************************************/


main.zip

1.09 KB, 下载次数: 1

319

主题

487

帖子

63

粉丝
快速回复 在线客服 返回列表 返回顶部