c
文章平均质量分 77
gfanbei
嵌入式软件爱好者,有时间就记录下遇到的问题
展开
-
【RISCV】RISCV e-906实现Tickless
riscv-e906实现Tickless低功耗原创 2023-06-09 13:38:15 · 942 阅读 · 0 评论 -
【soc】bootrom注意事项
主要对bootrom阶段的一些注意事项做了简要描述,以及处理方法原创 2022-11-27 18:25:35 · 806 阅读 · 1 评论 -
【soc】— spl&&uboot校验方法
本文主要对 spl&&uboot校验方法进行了描述,分为:外部有存储介质的如(nandFlash,norFlash,emmc,Sd等)且不要求从镜像文件的首地址执行的场景;和外部无存储介质的有校验的,且要求从镜像文件首地址运行的场景,进行了方法简介和结构说明。原创 2022-11-27 16:31:22 · 694 阅读 · 0 评论 -
解决 “error while loading shared libraries: libpng12.so.0/libmpfr.so.4: cannot open shared object file
解决 "error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory"问题原创 2022-08-05 15:08:58 · 5391 阅读 · 1 评论 -
【Linux】makefile
【Linux】makefileVERSION1目标 :依赖规则 命令 1 # VERSION1 2 #---------------------------------------------------------- 3 #app: main.c add.c sub.c div.c mul.c 4 # gcc -o app原创 2022-02-12 15:30:02 · 555 阅读 · 0 评论 -
【STM32】使用TIM内部计数器(CNT)实现按键长、短按
STM32使用TIM内部计数器(CNT)实现按键长、短按1.工具STM32CUBE、IARSTM32F411VET62.实现2.1案例说明按键:本案例使用PA0,高电平有效(按下引脚电平为1,未按下为0)长按: 按键从按下到释放时间 > 2s短按: 按键从按下到释放时间 < 1s长按功能:LED15翻转1次,调用HAL_GPIO_TogglePin( GPIOD, GPIO_PIN_15);短按功能:LED12翻转1次,调用HAL_GPIO_TogglePin( GP原创 2021-10-24 15:18:43 · 7049 阅读 · 0 评论 -
【STM32CUBE+IAR+IAP升级】
STM32CUBE+IAR+IAP升级案例应用:利用IAR+串口调试助手对STM32F411VET6进行简单的IAP实现,(代码分为两部分:BootLoader+APP翻转LED)1.工具:IARSTM32CUBEMX串口调试助手IAP预备知识参考:STM32CubeIDE IAP原理讲解,及UART双APP迭代升级IAP实现声明下:本文章参考[sudaroot]的文章STM32CubeIDE IAP原理讲解,及UART双APP迭代升级IAP实现2.工程配置2.1.1简要说下,本案例I原创 2021-09-19 18:52:19 · 3629 阅读 · 0 评论 -
【STM32CUBEMX + IIC + 光照传感器JSA1130】
STM32CUBEMX + IIC + 光照传感器(JSA1130)案例应用:使用IIC读取光照传感器(JSA1130)的数值,并利用UART打印显示1. 工具IARSTM32CUBEMX开发板STM32F411VET6IIC预备知识见:AT24C02 E2PROM芯片详解2. JSA1130光照传感器2.1.1 JSA1130 器件地址,根据手册ADDR引脚接地, 因此JSA1130器件地址为 0x442.1.2 JSA1130 寄存器;共有7个寄存器 CONFIGURE、 IN原创 2021-09-11 16:32:06 · 1904 阅读 · 0 评论 -
【STM32】STM32CUBEMX + ADC(单通道,双通道DMA)
STM32CUBEMX + ADC(单通道,双通道DMA)案例应用 :使用ADC采集电压(单通道、单通道+DMA、双通道+DMA),并利用串口打印采集转换后的电压值1.工具IARSTM32CUBEMX开发板STM32F411VET6预备知识参见:STM32】HAL库 STM32CubeMX教程九—ADC2.工程配置2.1 单通道2.1.1系统时钟RCC、SYS配置2.1.2 ADC配置,这里强调2点,使用ADC1——>IN4(通道4),本案例使用F4开发版,在12bit原创 2021-09-11 11:58:16 · 19242 阅读 · 13 评论 -
【STM32CUBEMX+PWM+UART】
【STM32CUBEMX+PWM+UART】1.案例应用 本案例为使用STM32CUBEMX配置TIM2生成PWM捕获信号,并对TIM3,TIM4(也可捕获其它设备输出)输出的PWM波进行捕获(本例捕获上升沿,极性可以自己设置),最后求取并串口打印TIM3,TIM4输出PWM的周期、占空比以及1个周期内高电平的持续时间。2.工具STM32CUBEMXIARSTM32F411VET63.PWM实验3.1.1 STM32CUBEMX 工程配置打开 STM32C原创 2021-09-04 15:37:50 · 932 阅读 · 0 评论 -
【整型提升】
【整形提升——浅析】1.预备知识1.1 —整形在计算机中的存储对于整形来说,数据在内存中是以补码的形式存储的,Why? 在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值 域统一处理;同时和减法一样也可以统一处理(CPU只有加法器),此外,补码与源码相互转换,其运算过程是相同的,不需要额外的硬件电路。1.2.原码、反码、补码 计算机中的符号数有三种表示方法,即源码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用 0原创 2021-09-02 20:56:23 · 195 阅读 · 0 评论 -
简单计算器实现
简单计算器实现编译环境vs17,实现功能(+ - * /) int Myadd(int x, int y){ return x + y;}int Mysub(int x, int y){ return x - y;}int Mymul(int x, int y){ return x * y;}int Mydiv(int x, int y){ if ...原创 2019-08-14 09:09:41 · 332 阅读 · 1 评论 -
C陷阱与缺陷
C陷阱与缺陷1.如下代码:(编译环境vs08版)# include<stdio.h># include<string.h># include<windows.h>int main(){ int i = 0; int arr[10] ={1,2,3,4,5,6,7,8,9,10} ; // printf("%p\n",&am...原创 2019-03-17 15:23:59 · 2833 阅读 · 3 评论 -
如何在一个仓库下创建多条分支,并在每一天上传代码后,都显示绿色方格
在一个仓库下创建多条分支,并在每一天上传代码后,都显示绿色方格1.上一篇已经讲了如何建立仓库并上传代码(如果没有看的建议看下哈)。现在我们在bird这个仓库下操作,图1 可见 只有 1个 branch(分支)。-----分支 ;图2所示,我们点中2_20右键选择 Creat Branch…,然后输入自己要创建的新的分支的 名字(建议不要用中文)。这里我命为one 然后直接ok,图3 ,4所...原创 2019-03-13 19:58:43 · 808 阅读 · 2 评论 -
如何将自己的代码上传到github
如何将自己的代码上传到github### 我自己用的工具是git及小乌龟(下附链接):下面的工具请按顺序安装(注:选择32/64bit安装,第3个为MARKDOWN编辑器下载)1—&amp;amp;amp;amp;amp;amp;amp;amp;gt;:https://git-scm.com/downloads2—&amp;amp;amp;amp;amp;amp;amp;amp;gt;:https://tortoisegit.org/download/原创 2019-03-05 20:50:42 · 948 阅读 · 3 评论 -
机器大小端
# 机器大小端1.为什么会有大小端? 这是因为在计算机系统中我们是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8bit。但在c语言中除了8bit的char之外,还有16bit的short型,32bit的long型(要看具体的编译器),另外,对于位数大于8位的处理器,例如16位或者32位处理器,由于寄存器宽度大于一个字节,那么必然存在着一个如何将多个字节安排的问题。因...原创 2019-08-08 11:51:22 · 617 阅读 · 4 评论 -
#if、#ifdef、#ifndef的用法
#if、#ifdef、#ifndef的用法#if 的用法#if 用法的一般格式为:#if 整型常量表达式1 程序段1#elif 整型常量表达式2 程序段2#elif 整型常量表达式3 程序段3#else 程序段4#endif它的意思是:如常“表达式1”的值为真(...原创 2019-09-12 08:37:12 · 2692 阅读 · 0 评论 -
【C】将字符串 student a am i或 ( I Am Prammer) 翻转为 i am a student或(Prammer Am I)
1.某公司2019秋招在线笔试题 ;联合体union#include<stdio.h>#include<stdlib.h>#include<string.h>union var{ int a ; char m[5]; int *p;};void test(){ printf("%d\n ",sizeof( union var));}...原创 2019-09-19 09:10:42 · 275 阅读 · 1 评论