uint8_t、uint16_t、uint32_t、uint64_t

一、C语言数据类型介绍

​ 在C语言当中,数据类型主要分为四大种:基本类型、构造类型、指针类型和空类型void。

其中基本类型包含两大类:整型和浮点型;

构造类型类型包含数组、结构体 struct、共用体 union、枚举enum。

char //1个字节int       //4个字节float //4个字节double    //8个字节

二、uint8_t、uint16_t、uint32_t、uint64_t

uint8_t、uint16_t、uint32_t、uint64_t等都并非新的数据类型,他们都是用typedef定义的,也就是起别名,他们包含于<stdint.h>中。

在头文件中的定义如下:

typedef unsigned   char      uint8_t;
typedef unsigned short  int     uint16_t;
typedef unsigned     int        uint32_t;
typedef unsigned    __INT64     uint64_t;
uint8_t      //1个字节uint16_t  //2个字节uint32_t  //4个字节uint64_t  //8个字节

输出格式:

uint8_t          //%d //(整型变量时)
uint16_t        //%d or %hu
uint32_t        //%u
uint64_t        //%llu

注:uint8_t实际上是一个char。所以输出uint8_t类型的变量实际上输出其对应的字符,而不是数值。

三、uint16_t转为uint8_t

​ 在单片机当中,各种传感器的数据多数是32位或者16位的,在STM32的HAL库开发当中,其发送函数是8位的,此时不能不能直接发送不同类型的数据,会发生精度丢失,此时则需要进行转换。

uint8_t array[2];
array[0]=(address&0xFF00)>>8;     //取地址的高8位
array[1]=address&0x00FF;          //取地址的低8位

学习路上小笔记,觉得对你有用的小伙伴请点个赞!

uint8_t、uint16_t、uint32_t、uint64_t相关推荐

  1. C语言中的int8_t,uint8_t, int16_t,uint16_t, int32_t,uint32_t, int64_t,uint64_t和int数组,char数组以及sizeof()的理解

    C语言中的数据类型理解 前言 一.嵌入式开发过程中常遇到的数据类型 二.关于printf的使用 前言 根据开发需要决,用 char 时,数组每个元素的 字长与存储单元 是1个byte(16进制2位,2 ...

  2. c语言u8u16u的区别,u8,u16,u32和uint8_t,uint16_t,uint32_t的含义

    ST库里面的宏定义,定义如下: #define      __I        volatile const          /*!< defines 'read only' permissi ...

  3. 关于嵌入式编程中的uint8_t、uint16_t......

    在嵌入式编程中经常遇到用uint8_t.uint16_t.uint32_t.uint_fast16_t之类的关键字定义一些整型变量,但是具体表示什么意思,并不是太清楚,只是把它当成int之类的整型变量 ...

  4. STM32系列(HAL库)——F103C8T6通过MFRC522、RFID射频卡、门禁卡模块读取卡片ID

    1.软件准备 (1)编程平台:Keil5 (2)CubeMX (3)XCOM(串口调试助手) 2.硬件准备 (1)MFRC-522模块 (2)F1的板子,本例使用经典F103C8T6 (3)ST-li ...

  5. FreeRTOS记录(七、FreeRTOS信号量、事件标志组、邮箱和消息队列、任务通知的关系)

    我们在前面单独介绍过FreeRTOS的任务通知和消息队列, 但是在FreeRTOS中任务间的通讯还有信号量,邮箱,事件组标志等可以使用 这篇文章就这些成员与消息队列和任务通知的关系进行说明分析 ..增 ...

  6. STM32F40实现 按键密码锁、按键控制LED 、串口选择菜单 、串口控制LED开关 、串口控制蜂鸣器开关及响度 、串口控制蜂鸣器播放音乐 、按键控制LED的亮度

    本人第一次发文,很多都不懂,尤其害怕版权问题,如果有人质疑我有盗权行为,请联系我,因为项目也遇到很多问题,然后就解决嘛,可印象中只有播放音乐代码有借鉴,所以如果有质疑盗了权的,请务必联系我.板子是使用 ...

  7. 《深入浅出DPDK》读书笔记(八):网卡性能优化(异步中断模式、轮询模式、混和中断轮询模式)

    本文内容为读书笔记,摘自<深入浅出DPDK> 82.DPDK的轮询模式 <DPDK PMD( Poll Mode Driver)轮询模式驱动程序> DPDK采用了轮询或者轮询混 ...

  8. NDK开发——FFmpeg实现视频转YUV、视频转RGB显示、音频转PCM、音频播放、音视频同步

    项目演示 前提准备 编译FFmpeg+CMake并能运行,详细可见我博客 下载libyuv库并编译成libyuv.so库,用于实现转换RGB格式功能 FFmpeg库简介 avcodec:编解码,包含 ...

  9. IP地址转换、主机大小端、htonl、ntohl实现

    http://blog.csdn.net/zww0815/article/details/7592940 #include <IOSTREAM> //#include <WINSOC ...

  10. STM32应用(二)测速模块、寻迹模块、数码管显示、TFT显示屏

    文章目录 1. Zave测速模块红外槽型光耦对射光电传感器码盘计数器 1.1 实物图和接线 1.2 模块特色 1.3 使用说明 2. TCRT5000红外反射光电开关 2.1 实物图和接线 2.2 功 ...

最新文章

  1. 软件项目管理大作业_信息系统项目管理师该如何备考?
  2. 测试你的前端代码 - part3(端到端测试)
  3. Python学习笔记:SMTP服务器
  4. #1176 : 欧拉路·一(欧拉通路的判定)
  5. 详解 WebRTC 高音质低延时的背后 — AGC
  6. 如何使用github搭建个人博客
  7. php5.4 mysql connect_php5.4 Call to undefined function mysql_connect()
  8. python3文件的编码类型是什么_python3.x - 怎么查看某个文件的编码方式?python
  9. Java多线程编程递增_java多线程编程之简介
  10. jQuery原理第三天
  11. Xshell远程连接Linux服务器
  12. centos7 update network time
  13. ++递归 字符串全排列_一文看懂全排列算法
  14. XBRL 可扩展商业报告语言
  15. c# mysql清理_C# 中清空sql数据库中的数据
  16. python将一个文本文件复制到另一个文件中_使用Python逐行从一个文本文件复制到另一个文本文件...
  17. Java中==和equals()的区别
  18. access如何查询两张表的内容_在Excel中使用SQL语句实现精确查询
  19. 【电脑使用】插入SD卡图标是灰色的,点击显示“请将磁盘插入驱动器”
  20. 《贝叶斯统计》最大后验密度可信集(HPD)Python实现

热门文章

  1. phpstudy重置密码登录报错#1045
  2. Word文档插入没有可用的联机内容
  3. python-docx插入图片调整为封面图
  4. fv计算机公式,p=fv是什么公式
  5. 白细胞直方图C语言,白细胞三分群及其直方图
  6. 使用wps的邮件合并和文档附件制作以照片形式的准考证
  7. js文档加载事件---
  8. centos usb转网口_CentOS 6.5安装qf9700 USB网卡驱动
  9. 数字转换成汉语中人民币的大写(javascript正则)
  10. 在入口文件main.js引入styl报错,不断修改后运行正常了