logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

从0开始的IMX6ULL学习篇——裸机篇之分析粗略IMX6ULL与架构

让我们到NXP的官网上扫一眼。我们先看CPU Platform,这个是我们的核心。这里我们的芯片是基于Arm Cortex-A7核心,这是一种高效能的处理器核心,,这些缓存有助于提高数据处理速度。关于Cortex-A7手册可以自行到ARM架构的官网上找ARMv7a的手册慢慢看,多媒体上,我们的这个芯片架构是支持24位并行CSI(摄像头接口)和LCD接口,以及S/PDIF Tx/Rx(数字音频接口)

文章图片
#学习#架构#嵌入式硬件
嵌入式现代C++开发——mutex与RAII守卫

上一章我们讲了无锁数据结构,听起来很酷对吧?但说实话,90%的并发场景其实用不上那么复杂的东西。一把好用的互斥锁,配合正确的使用模式,就能解决大部分问题。问题是,锁这东西用错了代价很大:忘记解锁会死锁、异常跳出会死锁、多个锁加锁顺序不对也会死锁。传统C风格的lock()unlock()写法,在复杂代码里几乎不可能保证正确性。C++给我们带来了RAII(Resource Acquisition Is

文章图片
#c++#数据结构#开发语言 +2
嵌入式通信协议学习——UART篇(1)

咱们说起来UART协议,那必须吧全称说出来:通用异步接收器/发射器(Universal Asynchronous Receiver/Transmitter )。我们学习通信协议,也自然需要先给一个大致的框图。可以看到,UART的框图非常的简单。我们说UART是一个整体看来支持双向传输的协议,每一个通信的主体都需要Tx,Rx和一个地参考线保证双方有一个明确的0和1的定义。

文章图片
#嵌入式#嵌入式硬件#stm32
备考蓝桥杯嵌入式2:使用LCD完成显示

首先,LCD初始化后,会随机显示一些内容,所以,调用LCD驱动包后的LCD_Init函数之后,还需要调用LCD_Clear(Black)来清理内容。所以,我们需要做的,首先是在操作LCD的时候,对GPIOC端口的使能进行压栈,然后恢复。不妙,我们的LCD复用了PC8到PC15的引脚,显然,当我们对LCD发生操作的时候,会跟LED发生装车。考场上会给予LCD的驱动包,所以并不需要我们来书写LCD驱动

文章图片
#蓝桥杯#学习
备考蓝桥杯嵌入式0:环境准备

我们的蓝桥杯嵌入式使用的单片机是STM32G431RBT6,这个配置需要注意的是,如果你先前没有使用过这个板子,这是要在CubeMX下下载对应的固件包。这个就是我们的板子,随身附上一根线,将线一段连到电脑上,另一端连到我们的USB下载口(板子上有丝印)。进入: Step Into,这个是进入函数内部(如果可以进入的话),一般用在确定这个函数是出问题的,或者是想了解的。注意,只有左侧栏是灰色的地方是

文章图片
#蓝桥杯#嵌入式
嵌入式Linux C应用层开发3 输入事件子系统与按钮输入

我们下面来考虑一下输入事件的子系统。在这里笔者的输出如下:U: Uniq=B: PROP=0B: EV=3​U: Uniq=B: PROP=3B: EV=b​U: Uniq=B: PROP=0​目前对于我们而言比较好操作的就是Key0这个摁扭,在我们的开发板上就是key0,对应于kbd event2。下面我们尝试做简单的编程。​if(argc!​exit(-1);​for(;;!exit(-1);

文章图片
#linux#c语言#嵌入式
嵌入式Linux学习——uboot篇(1)

这里算是笔者的尝鲜与尝试。笔者现在正在uboot和裸机开发双开。这里记录一下笔记和我的开发过程。

文章图片
#linux#学习
备考蓝桥杯嵌入式6:串口

以9600波特率为例子,他就说明了我们的字符会在1.04ms内完成我们的传递,只要我们的定时器在检测的时候发现CNT到达了1.04ms以上的时间才会增加到的CNT,也就是说我们的定时器已经计时了超过1.04ms,我们就可以认为我们的接受已经结束了,该处理拿到的数据了。很好,这里就是我们指定的TX和RX,所以,在我们打开USART的时候,配置要更改我们的串口的RX和TX.就是这样的简单。,所以,我们

文章图片
#单片机#嵌入式硬件#蓝桥杯
    共 84 条
  • 1
  • 2
  • 3
  • 9
  • 请选择