草庐IT

给linux移植fbtft驱动st7735s小屏幕(f1c100s)

内核版本5.4在使用spi总线接上了一个小网卡,实现了我们开发板对网络的访问之后,我还想接一个小的spi屏幕1.44寸款,来画一只小企鹅,顺便显示一些系统的调试信息。但是由于我这个开发板向外暴露出来的spi接口就两个,而且有一个已经因为串口的设置而不能使用。所以我们只能让这个小屏幕和enc28j60共用一个spi外设。内核配置直接makemenuconfig,进入DeviceDrivers,打开SPI,打开ST7735R的驱动。保存,再make-j16.接线与修改设备树我打算让enc28j60使用spi自己的cs作为片选线,然后另外找一个GPIO作为spi屏幕的片选。那这样的话又得改设备树。我

在f1c100s芯片上移植spi网卡enc28j60的linux驱动

前言我个人与全志的芯片颇有故事。在我还是一个不懂事的高中生时,我看到荔枝派的官方文档,顿时被这小小的板子给吸引住。点开文档的初见:荔枝派Nano(下面简称Nano)是一款精致迷你的Arm9核心板/开发板,可用于初学者学习linux或者商用于产品开发。Nano在与SD卡相当的尺寸上(25.4*33mm)提供了丰富的外设(LCD,UART,SPI,I2C,PWM,SDIO,KEYADC...)和较为强劲的性能(24M~408MHz,32MBDDR)。Nano延续并发展了Zero精巧的PCB设计,使得开发和使用非常方便:2.54mm排针直插面包板直插40PRGBLCD使用OTG口进行供电和数据传输(

(一)硬件制作--从零开始自制linux掌上电脑(F1C200S) <嵌入式项目>

目录一、工作环境及项目简介二、原理图设计1、核心板🍎电源电路🍎板对板连接器🍎复位电路🍎晶振电路 🍎主控电路 2、底板🍍串口转USB电路🍍TF卡电路🍍WIFI电路🍍TFT屏幕🍍音频🍍板对板连接器🍍40Pin4.3寸屏幕 三、PCB展示 四、实物展示一、工作环境及项目简介立创EDA:硬件原理图及PCB绘制。全志F1C200S:F1C100S内置32MBDDR1内存,F1C200S内置64MBDDR1内存。原理图:参考开源项目,详见墨云,详见peng-zhihui。核心板:四层。底板:两层。工具:烙铁、热风枪、焊锡膏、洗板水、各种电子元器件。二、原理图设计1、核心板🍎电源电路在F1C200s的dat

python - 使用pyinstaller时出错: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff

我在使用pyinstaller编译PyQt代码时遇到问题。我用这一行来编译:c:\Anaconda3\Scripts\pyinstaller.exe-y-F--distpath="."MyQt.py然后我收到此错误消息:File"c:\anaconda36bis\lib\site-packages\PyInstaller\hooks\hook-zmq.py",line18,inhiddenimports.extend(collect_submodules('zmq.backend'))File"c:\anaconda36bis\lib\site-packages\PyInstaller

F1C200S/F1C100S修改U-BOOT调试串口为UART1(PD3,PD4)

F1C200S/F1C100S修改U-BOOT调试串口为UART1(PD3,PD4)此处用的uboot是荔枝派nano的可以从荔枝派的仓库拉取修改好的在这看数据手册查看串口挂载总线查看数据手册根据总线图可以看出串口是挂载在APB总线上面的找到总线时钟设置部分使能UART1控制器时钟原本以为要改这,但是后来发现不需要修改。。。设置GPIO引脚复用功能直接pdf搜索要设置的引脚,找到寄存器可以看到是gpio基地址+0x068偏移地址这个寄存器的第[14:12]位与[18:16]位都是写011也就是十进制3(这个十进制数后面要用)可以看一下原来串口0的引脚配置是写101也就是5分析uboot串口初始

STM32F407VET6使用SPI访问Flash数据返回0xff(先写入数据,再读取数据,却返回0xff,但是通过debug却可以正常输出)

STM32F407VET6使用SPI访问Flash数据返回0xff(先写入数据,再读取数据,却返回0xff,但是通过debug却可以正常输出)看了野火的STM32F103VET6板子的SPI操作Flash的视频,用了自己的STM32F407VET6板子试了一下,出现了点问题,在网上看了很久也没有找出原因,现在问题解决了,就写一篇,如果大家有这种用F4的板子操作的情况,可以参考一下。出现题目括号中所说的问题,我开始以为是我读取的太快导致数据还有写入进去,就读取了,所以导致读到的数据都是未初始化的flash地址数据0xff。后来加了延时函数也是不行,但是通过debug模式却可以正常读取到写入的数据

(三)内核移植--从零开始自制linux掌上电脑(F1C200S)<嵌入式项目>

目录一、bootloader、kernel、rootfs联系二、内核移植1.内核源码获取2.内核配置与编译🍍基础配置与编译🍍TF卡分区🍍内核烧录三、参考内容一、bootloader、kernel、rootfs联系kernel可以理解为一个庞大的裸机程序,和uboot以及其他比如点灯类似的裸机程序没有本质区别,只是kernel分为用户态和内核态,内存和设备操作与裸机程序不同。kernel是最底层,负责各种外设硬件的驱动,kernel类似于黑盒子,从外面只能看到接口,无法看到具体功能是如何实现的,内核初始化提供的接口后,将控制权通过init程序交给根文件系统。详见:一文讲解Linux内核中根文件系

IIC通信从机无应答(读取数据始终为0XFF)

在做项目的时候遇到的问题,IIC通信时读取数据始终为0XFF下面从写数据开始介绍向从机写数据步骤为:开始信号->发送从机地址->等待应答->发送寄存器地址->等待应答->写数据->等待应答->停止信号等待应答时,若SDA为0则代表成功应答用示波器查看波形发现,在发送地址后SDA为高,无应答,说明未查询到从机而从机数据手册中地址为0x6D,我最开始出错的代码如下 IIC_Write(0x6D,0x30,1,yali_ctrl);//在地址0x6D从机的0x30寄存器中写入yali_ctrl的指令unsignedcharIIC_Write(unsignedcharaddr,unsignedchar

swift - 同时访问0x1c0a7f0f8,但在Xcode 9 beta 4上修改需要独占访问报错

我的项目同时使用了Objective-C和Swift代码。当用户登录时,它会调用一组用于用户首选项的api,我有一个DataCoordinator.swift类来安排API操作,我从UserDetailViewController.m类进行此调用以加载用户首选项。在我使用Xcode9beta4将我的代码迁移到Swift4之前,这用于正常工作。现在,当我登录时,它通过在我的DataCoordinator类中给我这个错误而崩溃。下面是我的DataCoordinator和Viewcontroller类的示例。DataCoordinator.swiftimportUIKit@objcMembe

swift - 同时访问0x1c0a7f0f8,但在Xcode 9 beta 4上修改需要独占访问报错

我的项目同时使用了Objective-C和Swift代码。当用户登录时,它会调用一组用于用户首选项的api,我有一个DataCoordinator.swift类来安排API操作,我从UserDetailViewController.m类进行此调用以加载用户首选项。在我使用Xcode9beta4将我的代码迁移到Swift4之前,这用于正常工作。现在,当我登录时,它通过在我的DataCoordinator类中给我这个错误而崩溃。下面是我的DataCoordinator和Viewcontroller类的示例。DataCoordinator.swiftimportUIKit@objcMembe