代码改变世界

关于enum在单片机中的使用

2016-06-20 10:46  小竹心语  阅读(1171)  评论(0)    收藏  举报

枚举:就是把各种情况一一列出来

下面通过一个例子来看

1 typedef enum {
2   CLK_LSE_OFF    = (uint8_t)0x00, /*!< LSE Diasble */
3   CLK_LSE_ON     = (uint8_t)0x04, /*!< LSE Enable */
4   CLK_LSE_Bypass = (uint8_t)0x24  /*!< LSE Bypass and enable */
5 } CLK_LSE_TypeDef;
6 
7 void test(CLK_LSE_TypeDef aaa);

由上面的例子可以看出来 

CLK_LSE_TypeDef 相当于是一种数据类型  只是这种数据类型的选项只有3个
即在test()函数中,形参aaa只能选择
CLK_LSE_OFF
CLK_LSE_ON
CLK_LSE_Bypass三者中的一个