王超的独立博客

发现更大的世界和更小的自己

Microsemi Libero使用技巧——使用第三方编辑器Notepad++

Libero使用技巧

前言 与Xilinx的ISE和Altera的Quartus一样,Microsemi的编辑器也支持指定第三方编辑器。 Microsemi自带的编辑器,没有自动补全功能,也不支持中文注释,非常不好用,为了提高编码效率,我们可以指定第三方文本编辑器,如Notepad++、Sublime Text3、Vim、UltraEdit等,本文以Notepad++为例,其他编辑器操作方法一样,只需要修改程序...

Microsemi Libero使用技巧——查看芯片资源占用情况

Libero使用技巧

前言 与MCU不同,FPGA的资源主要包括:逻辑资源,IO资源,Flash大小,PLL资源,SoC硬核处理器资源等,其中逻辑资源和IO资源是我们主要关心的,本篇文章将介绍,如何通过Microsemi Libero IDE来查看工程的详细资源占用情况。 A2F200M3F的资源 以Microsemi SmartFusion系列A2F200M3F-PQ208为例: 系统门数:200...

Microsemi Libero系列教程(二)——新建点灯工程

Libero系列教程

前言 上一篇文章,介绍了Microsemi Libero系列教程(一)-Libero开发环境介绍,下载,安装与注册,作为嵌入式开发中的Hello World,点灯是再也基础不过的实验了,通过点灯实验,可以了解芯片GPIO的控制和开发环境IDE新建工程的流程,对于FPGA来说,每个IO口几乎一样,所以本篇文章主要学习一下如何基于Microsemi Libero集成开发环境建立一个示例工程,让...

东芝开发板驱动OLED模块显示LOGO图片

东芝开发板试用

前言 在之前的两篇评测文章: 使用系统定时器SysTick实现精确延时微秒和毫秒函数 东芝MCU实现位带操作 介绍了系统SysTick实现精确延时,GPIO的输入输出使用,并实现了位带方式操作GPIO,大大简化了GPIO的输入输出控制。有了精确延时函数+GPIO控制,那么就可以使用通用GPIO模拟的方式,来驱动各种接口的显示器件传感器等。本文以通用GPIO模拟IIC协议...

东芝MCU实现位带操作

东芝开发板试用

位带操作简介 位带操作的概念其实30年前就有了,那还是 8051单片机开创的先河,如今ARM CM3 将此能力进化,可以说,这里的位带操作是8051 位寻址区的威力大幅加强版。即如果要改写某个寄存器的某一位,通过改写这一位映射的地址即可。东芝的TT_M3HQ开发板也是ARM CM3的MCU,实现了位带操作,就可以如同51单片机控制GPIO口一样的方便。 位带操作的优越性 初学51时...

使用系统定时器SysTick实现精确延时微秒和毫秒函数

东芝开发板试用

SysTick定时器简介 SysTick定时器是存在于系统内核的一个滴答定时器,只要是ARM Cortex-M0/M3/M4/M7内核的MCU都包含这个定时器,它是一个24位的递减定时器,当计数到 0 时,将从RELOAD 寄存器中自动重装载定时初值,开始新一轮计数。使用内核的SysTick定时器来实现延时,可以不占用系统定时器,由于和MCU外设无关,所以代码的移植,在不同厂家的Cor...

东芝半导体最新ARM开发板——TT_M3HQ开箱评测

东芝开发板试用

前言 最近从面包板社区申请到一块东芝最新ARM Cortex-M3内核的开发板——TT_M3HQ,其实开发板收到好几天了,这几天一直在构思怎么来写这第一篇评测文章,看大家在社区也都发了第一篇评测,我也趁着周末有时间来写一下开箱报告。了解过东芝的光耦和存储设备,但不知道东芝还有MCU产品,更没有用过相关的开发板,这次有幸能申请到一块最新的M3开发板,非常感谢面包板社区、东芝半导体、中科创达的...

STM32F407外部晶体改为25M后检测不到芯片的解决办法

STM32踩坑记录

问题描述 分享一个之前遇到的STM32F4晶体频率问题,导致单片机死机的解决办法。使用一款新的F4开发板,直接使用的正点原子STM32F407工程模板代码,管脚配置正确,下载到外部晶体为25MHz的开发板之后,LED不闪烁,串口无输出,单片机直接死机,调试器检测不到芯片。 问题分析 之前写过一篇文章:STM32串口打印输出乱码的解决办法,那个F103乱码是因为外部晶体频率12M,而程序...

详解串行通信协议及其FPGA实现

通信协议

前言 好久没更新博客了,这篇文章写写停停,用了近一周的时间,终于写完了。本篇文章介绍,串口协议数据帧格式、串行通信的工作方式、电平标准、编码方式及Verilog实现串口发送一个字节数据和接收一个字节数据。 对于MCU串口的发送接收,可能就是1行代码就能实现串口的发送和接收: STM32的串口接收和发送 //STM32发送1个字节 USART_SendData(USART1, 'A')...

玄铁910是个啥?是芯片吗?

阿里平头哥首次交货

1.平头哥首次交货 2019年7月25日,阿里云上海峰会,平头哥半导体发布新品玄铁910,最高支持16核,2.5GHz,7.1 Coremark/MHz。阿里平头哥,走出了万里长征第一步。 玄铁910的研发绝对不是一蹴而就,其前身中天微自研开发的CK801、CK802、CK803、CK805、CK807、CK810、CK860等7款嵌入式CPU IP核,均已得到大规模量产的验证,授权...