当前位置: 首页 > news >正文

51单片机(STC8051U34K64)_RA8889_SPI4参考代码(v1.3)

硬件:STC8051U34K64 + RA8889开发板(硬件跳线变更为SPI-4模式,PS=101,R143,R141短接,R142不接)

STC8051U34K64是STC最新推出来的单片机,主要用于替换传统的8051单片机,与标准的8051指令集兼容,同时又是内建超高速32位8051内核(1T)。
其内部集成2+32KB的SRAM,以及64KB的大容量程序存储空间,具有更宽的工作电压:1.9~5.5V,更宽的工作温度:-40℃ ~ 125℃。

RA8889是RAIO推出来的一款集成度很高的液晶控制芯片,最大可支持1366*2048分辨率大小的TFT彩屏。
其内建JPEG硬件解码引擎,可以显示JPG、AVI文件,解码速度超快!
该芯片内建128Mbit的显存,使得UI缓存相当充裕,软件代码使用简单易用,开发会十分高效!

本程序结合该MCU进行驱动TFT彩屏的测试,同时提供移植好的代码供大家使用!

实物连接图:
在这里插入图片描述

RA8889开发板硬件跳线:
在这里插入图片描述

单片机-RA8889连接电路:
在这里插入图片描述

代码说明:
(1)该代码采用SPI-4,通信接口定义:
P2.7 SPI_SS RA8889片选 DB[4] (XnSCS)
P2.6 SPI_MISO 接RA8889的SDO DB[5] (XSSDO)
P2.5 SPI_MOSI 接RA8889的SDI DB[6] (XSSDI)
P2.4 SPI_SCK SPI时钟 DB[7] (XSSCL)
P2.3 RA8889_RST RA8889硬件复位

(2)使用J-Link等工具将RA8889_Demo文件夹内的RA8889_Demo_F103_SPI_firmware.hex烧录到RA8889开发板上,将F103与RA8889的接线设定为高阻态。

(3)核心文件存放在RA8889_01_Kernel文件夹下:
RA8889_51.c 为底层接口文件
RA8889_API_51.c 为用户层接口文件
RA8889_MCU_IF.c 为单片机接口文件(通信接口定义及通信函数)
UserDef.h 为用户自定义参数文件
delay.c 延迟函数,请根据单片机的主频修正

(4)演示以下常用功能:
Introduction(); //文字介绍
Geometry_Demo(); //几何绘图演示
Show_JPG(); //调用FLASH的JPG图片显示
Show_BMP(); //调用FLASH的BMP图片显示
Fade_in_Fade_out(); //图片淡入淡出演示
Show_AVI(); //调用FLASH的AVI影片播放
Show_PNG(); //调用FLASH的PNG图片显示

源码下载:
请使用PC端阅读本篇,在标题下方有下载链接。

或者至原文下载:https://bbs.lcdvision.com.cn/forum.php?mod=viewthread&tid=55

视频演示,硬件和软件之详细介绍(STC8051U34K64和STC8H8K64U用法相近):

STC8051U34K64单片机通过RA8889驱动TFT彩屏之方案详细解说

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • VIM模式之间的切换
  • 深圳比创达|EMC与EMI测试整改:打造电磁“绿色”产品的必经之路4
  • virturalBox+K8S部署jaeger-all-in-one
  • CentOS 6.5配置国内在线yum源和制作openssh 9.8p1 rpm包 —— 筑梦之路
  • 跨域解决方案处理
  • 【Linux网络】IP协议{初识/报头/分片/网段划分/子网掩码/私网公网IP/认识网络世界/路由表}
  • HTTP-概述
  • React Hooks学习笔记
  • redis源码分析之底层数据结构(一)-动态字符串sds
  • 【Git】取消追踪多个文件或目录
  • Duplicate class kotlin.collections.jdk8.CollectionsJDK8Kt found in modules。Android studio纯java代码报错
  • 使用Spring Boot和自定义缓存注解优化应用性能
  • Linux内存管理--系列文章柒——硬件架构
  • ELK集群搭建
  • 28个常用的损失函数介绍以及Python代码实现总结
  • 网络传输文件的问题
  • Angular Elements 及其运作原理
  • CSS3 变换
  • es6--symbol
  • HTTP传输编码增加了传输量,只为解决这一个问题 | 实用 HTTP
  • JavaScript新鲜事·第5期
  • Java多态
  • mongodb--安装和初步使用教程
  • vuex 笔记整理
  • Vue学习第二天
  • 机器人定位导航技术 激光SLAM与视觉SLAM谁更胜一筹?
  • 基于MaxCompute打造轻盈的人人车移动端数据平台
  • 简单易用的leetcode开发测试工具(npm)
  • 如何将自己的网站分享到QQ空间,微信,微博等等
  • 如何优雅地使用 Sublime Text
  • 适配mpvue平台的的微信小程序日历组件mpvue-calendar
  • 微信端页面使用-webkit-box和绝对定位时,元素上移的问题
  • 消息队列系列二(IOT中消息队列的应用)
  • mysql面试题分组并合并列
  • Spark2.4.0源码分析之WorldCount 默认shuffling并行度为200(九) ...
  • #laravel 通过手动安装依赖PHPExcel#
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • #在线报价接单​再坚持一下 明天是真的周六.出现货 实单来谈
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • (175)FPGA门控时钟技术
  • (C)一些题4
  • (阿里云万网)-域名注册购买实名流程
  • (八十八)VFL语言初步 - 实现布局
  • (附源码)springboot青少年公共卫生教育平台 毕业设计 643214
  • (附源码)计算机毕业设计SSM基于健身房管理系统
  • (一)utf8mb4_general_ci 和 utf8mb4_unicode_ci 适用排序和比较规则场景
  • (转)Mysql的优化设置
  • (转)从零实现3D图像引擎:(8)参数化直线与3D平面函数库
  • .a文件和.so文件
  • .dwp和.webpart的区别
  • .NET Framework 服务实现监控可观测性最佳实践
  • .net Signalr 使用笔记
  • .NetCore 如何动态路由
  • .Net环境下的缓存技术介绍
  • .Net接口调试与案例