您当前的位置:首页 > 问答 > 内容

糖尿病吃什么食物最好,糖尿病吃什么食物最好水果有哪些(STM32入门系列-使用库函数点亮LED)

关于【糖尿病吃什么食物最好】,糖尿病吃什么食物最好水果有哪些,今天乾乾小编给您分享一下,如果对您有所帮助别忘了关注本站哦。

内容导航:1、STM32入门系列-使用库函数点亮LED,LED初始化函数!2、糖尿病吃什么食物最好

1、STM32入门系列-使用库函数点亮LED,LED初始化函数!

要点亮LED,需要完成LED的驱动, 在工程模板上新建一个led.c和led.h文件,将其存放在led文件夹内。这两个文件需要我们自己编写。

通常xxx.c文件用于存放编写的驱动程序,xxx.h文件用于存放xxx.c内的stm32头文件、管脚定义、全局变量声明、函数声明等内容。

在led.c文件内编写如下代码:

#include "led.h"

/*******************************************************************************

* 函 数 名 : LED_Init

* 函数功能 : LED 初始化函数

* 输 入 : 无

* 输 出 : 无

*******************************************************************************/

void LED_Init()

{

GPIO_InitTypeDef GPIO_InitStructure; //定义结构体变量

RCC_APB2PeriphClockCmd(LED_PORT_RCC,ENABLE);

GPIO_InitStructure.GPIO_Pin=LED_PIN; //选择你要设置的 IO 口

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP; //设置推挽输出模式

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; //设置传输速率

GPIO_Init(LED_PORT,&GPIO_InitStructure);

GPIO_SetBits(LED_PORT,LED_PIN); //将 LED 端口拉高,熄灭所有 LED

}

函数中的LED_PORT_RCC、LED_PIN和LED_PORT是我们定义的宏,其存放在led.h头文件内 。LED_PORT_RCC定义的是LED端口时钟(如RCC_APB2Periph_GPIOC),LED_PIN定义的是LED的引脚(如 GPIO_Pin_0),LED_PORT定义的是LED的端口(如GPIOC)。这样定义宏的好处是有效提高了程序的移植性,即使后续需要换其他端口,只需简单修改这几个宏就可以完成对LED的控制。

在 led.h 文件内编写如下代码:

#ifndef _led_H

#define _led_H

#include "stm32f10x.h"

#define LED_PORT GPIOC

#define LED_PIN

(GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7)

#define LED_PORT_RCC RCC_APB2Periph_GPIOC

void LED_Init(void);

#endif

LED_Init()函数就是对LED所接端口的初始化,是按照GPIO初始化步骤完成,这些内容在“寄存器点亮一个LED”章节中有介绍。下面我们主要看库函数是如何实现GPIO初始化的。

在库函数中实现 GPIO 的初始化函数是:

void GPIO_Init(GPIO_TypeDef*GPIOx,GPIO_InitTypeDef*GPIO_InitStruct);

这个函数具体有什么功能以及函数形参的意义,我们可以通过库函数帮助文档来查阅。GPIO_Init函数内有两个形参,第一个形参是GPIO_TypeDef类型的指针变量,而GPIO_TypeDef是一个结构体类型,封装了GPIO外设的所有寄存器,所以给它传送GPIO外设基地址即可通过指针操作寄存器内容,第一个参数值可以为GPIOA、GPIOB、...GPIOG等,其实这些就是封装好的GPIO外设基地址,在stm32f10x.h文件中可以找到。

第二个形参是GPIO_InitTypeDef类型的指针变量,而GPIO_InitTypeDef也是一个结构体类型,里面封装了GPIO外设的寄存器配置成员。我们初始化GPIO,其实就是对这个结构体配置。

如果想快速查看代码或参数可以用鼠标点击要查找的函数或者参数,然后右键鼠标选择“Go To Definition Of ...”即可进入所要查找的函数或参数内。

查找函数内变量类型也是同样的方法,但是如果发现此方法查找不出内容,那可能就是你所查找的东西在 KEIL5 软件认为是不正确的。

在 LED 初始化函数中最开始调用的一个函数是:

RCC_APB2PeriphClockCmd(LED_PORT_RCC,ENABLE);

此函数功能是使能GPIOC外设时钟, 在STM32中要操作外设必须将其外设时钟使能,否则即使其他的内容都配置好,也是徒劳无功。因为GPIO外设是挂接在APB2总线上,所以是对APB2总线时钟进行使能,函数内有两个参数,一个是用来选择外设时钟,一个是用来选择使能还是失能,使能:ENABLE,失能:DSIABLE。

在LED初始化函数内最后还调用了GPIO_SetBits(LED_PORT,LED_PIN)函数,此函数功能是让GPIOC端口的第0-7个引脚输出高电平,让LED处于熄灭状态,如果要对同一端口的多个引脚输出高电平,可以使用“|”运算符,相应的在对结构体初始化配置时管脚设置那里也要使用“|”将管脚添加进去,即在led.h文件内对LED引脚的定义。(前提条件是:要操作的多个引脚必须是配置同一种工作模式)例如:

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0|GPIO_Pin_1;//管脚设置

GPIO_SetBits(GPIOC,GPIO_Pin_0|GPIO_Pin_1);

其实从函数名我们大致就可以知道函数的功能。函数内有两个参数,一个是端口的选择,一个是端口管脚的选择。如果要输出低电平的话可以使用如下库函数:

GPIO_ResetBits(GPIOC,GPIO_Pin_0);

这个函数功能和GPIO_SetBits是相反的,一个输出低电平,一个输出高电平,里面参数功能是一样的。

GPIO输出函数还有好几个,例如:

void GPIO_WriteBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin,BitAction BitVal);

void GPIO_Write(GPIO_TypeDef* GPIOx, uint16_t PortVal);

功能:设置端口管脚输出电平,这两个函数很少使用。

从 GPIO 内部结构可知,STM32 的 GPIO 还可以读取输入或输出引脚电平状态。其函数如下:

读取输入引脚

uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_tGPIO_Pin);

功能:读取端口中的某个管脚输入电平。底层是通过读取 IDR 寄存器。

uint16_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx);

功能:读取某组端口的输入电平。底层是通过读取 IDR 寄存器。

读取输出引脚

uint8_t GPIO_ReadOutputDataBit(GPIO_TypeDef* GPIOx, uint16_tGPIO_Pin);

功能:读取端口中的某个管脚输出电平。底层是通过读取 ODR 寄存器。

uint16_t GPIO_ReadOutputData(GPIO_TypeDef* GPIOx);

功能:读取某组端口的输出电平。底层是通过读取 ODR 寄存器。

在 led.h 文件中可以看到使用了一个定义头文件的结构,代码如下:

#ifndef _led_H

#define _led_H

//此处省略头文件定义的内容

#endif

它的功能是防止头文件被重复包含,避免引起编译错误。在头文件的开头,使用“#ifndef”关键字,判断标号“ _led_H”是否被定义,若没有被定义,则从“#ifndef”至“ #endif”关键字之间的内容都有效,也就是说,这个头文件若被其它文件“ #include”,它就会被包含到其该文件中,且头文件中紧接着使用“#define”关键字定义上面判断的标号“_led_H”。当这个头文件被同一个文件第二次“#include”包含的时候,由于有了第一次包含中的“ #define _led_H”定义,这时再判断“#ifndef _led_H”,判断的结果就是假了,从“#ifndef”至“#endif”之间的内容都无效,从而防止了同一个头文件被包含多次,编译时就不会出现“redefine(重复定义)”的错误了。

一般来说,我们不会直接在C的源文件写两个“#include”来包含同一个头文件,但可能因为头文件内部的包含导致重复,这种代码主要是避免这样的问题。如“led.h”文件中调用了#include “stm32f10x.h”头文件,可能我们写主程序的时候会在 main 文件开始处调用#include“stm32f10x.h”和“led.h”,这个时候“stm32f10x.h”文件就被包含两次了,如果在头文件中没有这种机制,编译器就会报错。

转自网络,用于分享学习,若侵联系删除

2、糖尿病吃什么食物最好

糖尿病吃什么食物最好

1、洋葱

甜润白嫩,含有前列腺素A和含硫氨基酸,有扩张血管、降血压、降血脂、防止动脉硬化作用,对预防糖尿病的并发症有益。

2、黄瓜

爽脆甘甜,含糖量仅1.6%,糖尿病病人可以此代替水果食用,并可从中获取维生素C、胡萝卜素、纤维素、矿物质等。

黄瓜中还含有丙醇二酸,能抑制身体中糖类物质转变为脂肪,故身体肥胖的糖尿病病人及合并高血压、高血脂的糖尿病病人更应多食黄瓜。

3、竹笋

糖和脂肪含量均很低,其中莴笋含胰岛素激活剂,对糖尿病病人有益。竹笋属高纤维素食物,可延缓糖尿病病人肠道中食物的消化和葡萄糖的`吸收,有助于控制餐后血糖。

4、苦瓜

肉质柔嫩,性寒味苦,富含多种营养成分,尤其维生素C的含量高居各种瓜类之首。药理试验发现,苦瓜中所含的苦瓜皂甙,有非常明显的降血糖作用,不仅有类似胰岛素样作用,堪称植物胰岛素,而且还有刺激胰岛素释放的功能。

有人试验,用苦瓜皂甙制剂口服治疗2型糖尿病,总有效率可达到78.3%。所以糖尿病病人经常搭配吃些苦瓜,有利于控制血糖。

5、柚子

柚子不但营养价值高,而且还具有健胃、润肺、补血、清肠、利便等功效,可促进伤口愈合,对败血病等有良好的辅助疗效。

此外,由于柚子含有生理活性物质皮甙,所以可降低血液的黏滞度,减少血栓的形成,故而对脑血管疾病,如脑血栓、中风等也有较好的预防作用。而鲜柚肉由于含有类似胰岛素的成分,更是糖尿病患者的理想食品。

糖尿病吃什么食物最好

1、洋葱

甜润白嫩,含有前列腺素A和含硫氨基酸,有扩张血管、降血压、降血脂、防止动脉硬化作用,对预防糖尿病的并发症有益。

2、黄瓜

爽脆甘甜,含糖量仅1.6%,糖尿病病人可以此代替水果食用,并可从中获取维生素C、胡萝卜素、纤维素、矿物质等。

黄瓜中还含有丙醇二酸,能抑制身体中糖类物质转变为脂肪,故身体肥胖的糖尿病病人及合并高血压、高血脂的糖尿病病人更应多食黄瓜。

3、竹笋

糖和脂肪含量均很低,其中莴笋含胰岛素激活剂,对糖尿病病人有益。竹笋属高纤维素食物,可延缓糖尿病病人肠道中食物的消化和葡萄糖的`吸收,有助于控制餐后血糖。

4、苦瓜

肉质柔嫩,性寒味苦,富含多种营养成分,尤其维生素C的含量高居各种瓜类之首。药理试验发现,苦瓜中所含的苦瓜皂甙,有非常明显的降血糖作用,不仅有类似胰岛素样作用,堪称植物胰岛素,而且还有刺激胰岛素释放的功能。

有人试验,用苦瓜皂甙制剂口服治疗2型糖尿病,总有效率可达到78.3%。所以糖尿病病人经常搭配吃些苦瓜,有利于控制血糖。

5、柚子

柚子不但营养价值高,而且还具有健胃、润肺、补血、清肠、利便等功效,可促进伤口愈合,对败血病等有良好的辅助疗效。

此外,由于柚子含有生理活性物质皮甙,所以可降低血液的黏滞度,减少血栓的形成,故而对脑血管疾病,如脑血栓、中风等也有较好的预防作用。而鲜柚肉由于含有类似胰岛素的成分,更是糖尿病患者的理想食品。

糖尿病吃什么食物最好

糖尿病适合吃的食物

1、南瓜

将50g南瓜、40g红豆、10g海带一起放入砂锅中加水煮沸,直至红豆煮烂即可。服用可有助于治疗糖尿病。

2、冬瓜

将30g冬瓜、30g冬麦、9g黄连一起放入砂锅中煎煮,对治疗糖尿病有很好的效果。

3、洋葱

将100g洋葱、100g豇豆一起放入砂锅中蒸煮,服用后可有效治糖尿病。

4、萝卜

将200g绿豆、yigeli一个梨、250g萝卜,放入砂锅中加水煎煮,服用后可降血糖。

5、山药

将50g山药、500g鸽子肉,还有少许盐,加入砂锅后放水炖烧,服用后有助于糖尿病的治疗。

6、苦瓜

苦瓜是寒性食物,味苦,经常食用对糖尿病的治疗有很好的作用。

7、玉米

将2只猪胰、50g玉米一起放入砂锅中加水煮沸,服用后可利尿消肿、降血糖。

如何预防糖尿病

1、控制饮食

治疗糖尿病的关键在于控制饮食。通过饮食控制,可促进尿糖消失,空腹血糖降至正常,纠正代谢紊乱,防止各种并发症。应根据病人体重、劳动强度测出所需主粮的量。每天主粮不高于250克。如再感觉饥饿时,可增加些既含有高纤维,又能降血糖的蔬菜量,如洋葱、芹菜、海带、菠菜等。蛋白质类副食品如豆制品、牛奶、瘦肉等都可食用。

2、经常运动

保持运动对于1型糖尿病的预防至关重要,每天运动30分钟,可以选择散步、慢跑、游泳等,绝对有益。1型糖尿病发生的一个重要特征就是胰岛素抵抗,就是身体对胰岛素不敏感,无法正常利用,而运动恰好可以改善胰岛素的敏感性,可以有效预防2型糖尿病。芬兰一项调查发现,运动能激发胰岛细胞的活性。每周运动4小时,或每天运动35分钟的人,即使体重没有变化,其患糖尿病的风险也会下降80%。

3、劳逸结合

一般病人可参加正常工作,但不宜过度劳累。要节制房事。保持精神乐观,避免精神创伤。运动可增强对糖的耐受性和降低对胰岛素的依赖性,减少胰岛素需要量,降低血糖,改善血脂的代谢异常。适当的运动可控制肥胖。选择慢跑、散步、练功十八法、健身操、太极拳等项目,从短时间,小运动量开始,持之以恒。但空腹时及重症糖尿病人不宜运动,以防发生低血糖休克等疾病。

4、控制血压

通过运动和饮食来实现减肥,特别要关注腹部脂肪,因为腹部减肥能大大提高糖耐量。控制高血压,这与糖尿病病情发展密切相关。

5、控制体重

肥胖,尤其是腹型肥胖是2型糖尿病发生的危险因素。随着生活水平的提高,胖孩子越来越多,糖尿病开始“瞄上”青少年,这不得不引起人们的重视。为了有效预防1型糖尿病,首先就要把体重降下来,使体重接近正常。

6、控制盐量

多尿是1型糖尿病的症状之一。多数1型糖尿病患者伴有高血压和肥胖,多吃盐会使血压升高,不利于高血压的防治,故必须限盐。少吃盐可以减少患心脏病和中风的可能性。

本文关键词:糖尿病吃什么食物最好水果有哪些,糖尿病吃什么食物最好降糖图片,糖尿病吃什么食物最好水果有哪些鸡蛋,糖尿病吃什么药降糖效果好,糖尿病吃什么食物最好蔬菜有哪些。这就是关于《糖尿病吃什么食物最好,糖尿病吃什么食物最好水果有哪些(STM32入门系列-使用库函数点亮LED)》的所有内容,希望对您能有所帮助!


声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,谢谢。

上一篇: 兰蔻大粉水和什么搭配比较好,兰蔻大粉水和什么搭配比较好闻(兰蔻大粉水、蓝水)

下一篇: 女人梦见六月下雪是什么征兆,梦见六月下雪是什么意思(做好4项养护)



猜你感兴趣

推荐阅读

网站内容来自网络,如有侵权请联系我们,立即删除! | 软文发布 | 粤ICP备2021106084号