Romanticjlm

  • 2019-05-26
  • 加入了学习《AM57X 平台特点和典型应用》,观看 介绍AM57X平台特点和典型应用 - 1

  • 2019-05-24
  • 加入了学习《理解PID控制(英语字幕)》,观看 Part 1- What is PID Control

  • 2019-05-21
  • 加入了学习《matlab机器学习(英语中字)》,观看 机器学习快速入门—决策树(Decision Tree)

  • 加入了学习《matlab机器学习(英语中字)》,观看 机器学习快速入门—k均值聚类算法(k-means)

  • 加入了学习《matlab机器学习(英语中字)》,观看 机器学习快速入门—k近邻算法(K-NN)

  • 加入了学习《matlab机器学习(英语中字)》,观看 机器学习快速入门—线性回归

  • 加入了学习《matlab机器学习(英语中字)》,观看 什么是机器学习

  • 2019-05-14
  • 加入了学习《Hinton机器学习与神经网络》,观看 Why do we need machine learning

  • 2019-05-12
  • 回复了主题帖: KEIL5 出MSP432的支持包了

    强仔00001 发表于 2015-12-24 11:30 附件在这里
    谢谢,十分感谢

  • 发表了主题帖: 包罗万象的OLED

    本帖最后由 Romanticjlm 于 2019-5-12 21:55 编辑 包罗万象的OLED 今天是第二天了,我试着玩玩OLED这个可爱的家伙。他是一个包罗万象的小精灵,精致可爱又纯粹! 1.    硬件电路部分开发板和OLED的连接关系如表1所示。表1:OLED使用的IO口   功能  引脚描述OLEDPB10SCLPB11SDA我的OLED屏幕采用IIC接口,时钟线SCL连接PB10,数据线SDA连接PB11。只要将这两个端口配置为输出模式,然后模拟IIC时序就可以驱动OLED了。 2.软件部分首先我们对于OLED的初始化的流程是:a.          将PB10、PB11配置为输出模式;b.         初始化OLED屏幕;c.          在相应位置显示汉字,数字,字符串、图片等。部分代码如图1所示:图1:OLED初始化程序3.代码详解首先,我们根据OLED屏幕店家给的驱动程序直接改动,获得我们的OLED驱动程序。其实程序改动不多,只需将IO口配置好之后,将之前代码有关IIC的宏改成GD32单片机的就好。具体改动可以参考代码。然后我根据应用说7个函数;  函数名称  功能描述OLED_Init与OLED屏幕有关IO口初始化以及屏幕的初始化OLED_Clear清除OLED屏幕显示OLED_ShowChar在OLED固定位置显示单个字符OLED_ShowString在OLED固定位置显示一个字符串OLED_ShowNum在OLED固定位置显示一个数字OLED_ShowCHinese在OLED固定位置显示一个汉字OLED_DrawBMP在OLED固定位置显示一个图像 3-1. OLED_Init函数OLED_Init函数具体描述见表3-1表3-1  函数名称  OLED_Init函数原型void OLED_Init(void)函数描述OLED屏幕初始化调用的函数-输入的参数--输出的参数--返回的值-- 3-2. OLED_Clear函数OLED_Clear函数具体描述见表3-2表3-2  函数名称  OLED_Clear函数原型void OLED_Clear (void)函数描述清除OLED屏幕调用的函数-输入的参数--输出的参数--返回的值-- 3-3. OLED_ShowChar函数OLED_ShowChar函数具体描述见表3-3表3-3  函数名称  OLED_ShowChar函数原型void OLED_ShowChar(uint8_t  x,uint8_t y,uint8_t chr,uint8_t Char_Size)函数描述OLED屏幕显示一个字符调用的函数-输入的参数x列坐标 0~127y行坐标 0~7Char_Size字体大小选择 16---字体大小为8*16  8---字体大小为6*8输出的参数--返回的值--OLED屏分辨率为128*64,竖向取模。如果是8*16大小的字符,对于第一行来说,y=0; 对于第二行来说,y=2;最后一行,y=6。举例如下://CODE1:             OLED_Clear();    //清屏幕             OLED_ShowChar(0,0,'1',16);             OLED_ShowChar(0,2,'2',16);             OLED_ShowChar(0,4,'3',16);             OLED_ShowChar(0,6,'4',16);CODE1显示效果如下://CODE2:             OLED_Clear();    //清屏幕             OLED_ShowChar(0,0,'1',16);             OLED_ShowChar(8,0,'2',16);             OLED_ShowChar(16,0,'3',16);             OLED_ShowChar(24,0,'4',16);CODE2显示效果如下: 3-4. OLED_ShowString函数OLED_ShowString函数具体描述见表3-4表3-4  函数名称  OLED_ShowString函数原型void  OLED_ShowString(uint8_t x,uint8_t y,uint8_t *chr,uint8_t Char_Size)函数描述OLED屏幕显示字符串调用的函数-输入的参数x列坐标 0~127y行坐标 0~7chr字符串指针 例如可以为 “1234”Char_Size字体大小选择 16---字体大小为8*16  8---字体大小为6*8输出的参数--返回的值--举例如下://CODE3:             OLED_ShowString(0,0,"1234",16);显示效果如下:3-5. OLED_ShowNum函数OLED_ShowNum函数具体描述见表3-5表3-5  函数名称  OLED_ShowNum函数原型void  OLED_ShowNum(uint8_t x,uint8_t y,uint32_t num,uint8_t len,uint8_t size2)函数描述OLED屏幕固定位置显示相应长度数字调用的函数-输入的参数x列坐标 0~127y行坐标 0~7num显示的数字 0~65535len所占屏幕位数 1~5size2字体大小选择 16---字体大小为8*16  8---字体大小为6*8输出的参数--返回的值--举例如下://CODE3:OLED_ShowNum(0,0,1,1,16);//在第二行第一个位置开始显示数字1,其占1个位置,故前面无空位置             OLED_ShowNum(0,2,1,2,16);//在第二行第一个位置开始显示数字1,其占2个位置,故前面有1个空位置             OLED_ShowNum(0,4,1,3,16);//在第二行第一个位置开始显示数字1,其占3个位置,故前面有2个空位置             OLED_ShowNum(0,6,65535,5,16);显示效果如下所示: 不早了,有管汉字和图像的明天再贴出来!!!晚安各位!!!奉上代码!!! 今天是5月12号,母亲节,也是汶川大地震11年祭。天气不咋滴,千里黄云白日曛。补上昨天的剩下的两个函数。3-6. OLED_ShowCHinese函数OLED_ShowCHinese函数具体描述见表3-6表3-6  函数名称  OLED_ShowCHinese函数原型void  OLED_ShowCHinese(uint8_t x,uint8_t y,uint8_t no)函数描述OLED屏幕上指定位置显示一个汉字调用的函数-输入的参数x列坐标 0~127y行坐标 0~7no汉字的索引号 汉字全部放在Hzk[][32]数组中输出的参数--返回的值--下面我来说一下,有关OLED的几个文件:oled.c     oled常用的函数oled.h     oled屏幕有关的宏bmp.h     有关要显示的图片oledfont.h    主要是存放的字库数据,包含常用的字符和用户自己所取模的中文。常用字符分为两种大小格式6*8和8*16。6*8的字体存放在数组F6x8[][6]中,字符纵向占8个像素点,横向占6个字符。8*16的字体存放在数组F8X16[]中,字符纵向占16个像素点,横向占8个字符。我们自己通过取字模软件获得的汉字取字模数据放在数组Hzk[][32]中。我们只需要将自己使用到的汉字用取模软件放到Hzk[][32]这个数组中即可。下面是去自摸后产生的结果如下所示。下面我们来说说汉字的取字模方法:STEP1:打开取字模软件PCtoLCD2002STEP2:点击模式,切换为字符模式,并将字体设置为宋体,字宽和自高都设置为16。 STEP3:打开选项,并进行如下配置,并点击确定。 STEP4:在输入框输入汉字,并点击生成字模,将生成的数据粘贴到数组Hzk[][32]中。 STEP5:粘贴后的数据,将第一行注释掉,注释前后如下所示。 举例如下://CODE5:             OLED_ShowCHinese(18,0,0);//平             OLED_ShowCHinese(36,0,1);//衡             OLED_ShowCHinese(54,0,2);//小             OLED_ShowCHinese(72,0,3);//车效果如下: 3-7. OLED_DrawBMP函数OLED_DrawBMP函数具体描述见表3-7表3-7  函数名称  OLED_DrawBMP函数原型void  OLED_DrawBMP(unsigned char x0, unsigned char y0,unsigned char x1, unsigned  char y1,  unsigned  char BMP[])函数描述OLED屏幕上指定位置显示衣服图像调用的函数-输入的参数x0列起始坐标 0~127y0行起始坐标 0~7x1列结束坐标 0~127y1行结束坐标 0~7BMP图像数组名 BMP1[]数组中输出的参数--返回的值--下面我们来说说图像的取字模方法:STEP1:打开取字模软件PCtoLCD2002STEP2:点击模式,切换为图像模式;然后点击文件打开BMP图片。STEP3:点击选项,进行如下设置。STEP4:点击生成字模,粘贴到数组BMP1[]中即可。举例如下://CODE6:OLED_DrawBMP(0,0,128,8,BMP1);效果如下所示: 再附一张自己制作的图片,可怜天下父母心,祝各位母亲,母亲节快乐!!

  • 2019-05-11
  • 回复了主题帖: 【GD32E231 DIY大赛】1,收货开箱

    你还送了芯片,不错呀:)

  • 2019-05-10
  • 回复了主题帖: 开篇:永远的LED灯

    第一天收到开发板:titter:

  • 发表了主题帖: 开篇:永远的LED灯

    永远的LED灯    今天终于收到了兆易创新的GD32E231C8T6开发板,首先进行点灯这个永远的话题。先给这个开发板来张靓照吧!图1就是这个小家伙。 图1:Start开发板照片 1.         硬件电路部分这款开发板名叫Start,其LED电路如图2所示。LED用到的IO口如表1所示。图2:LED电路 表1:LED灯使用的IO口   由LED电路图我们可以知道,LED灯全部使用的是GPIO A,并且高电平点亮LED灯。因此我们只要将这些IO口配置为输出模式,并给相应的IO口高电平便可以点亮相应的LED灯。2.软件部分首先我们对于PA7、PA8、PA11、PA12,我们现将其配置成输出模式的流程是:a.     使能GPIOA的时钟;b.    将GPIOA中的PA7、PA8、PA11、PA12设置为输出模式;c.     GPIOA中的PA7、PA8、PA11、PA12输出高低电平点亮相应的LED灯。 具体代码如图3所示:图3:LED初始化程序3.具体细节见下面代码。

  • 2019-04-30
  • 加入了学习《小梅哥Intel SoC FPGA开发与应用培训课程》,观看 soc基本概念

  • 2019-04-19
  • 回复了主题帖: GD32E231Cx自己新建工程OK,分享给大家

    里面的Hardware  和Basic文件夹要大家自己建,不好意思,不知道怎么删除重新上传!诸位见谅。

  • 回复了主题帖: GD32E231Cx自己新建工程OK,分享给大家

    欢迎交流学习!

  • 发表了日志: GD32E231Cx自己新建工程OK,分享给大家

  • 发表了主题帖: GD32E231Cx自己新建工程OK,分享给大家

      怀着无比激动的心情写下这个帖子,因为我入围了,可以用国产的32位处理器了,兴奋ing。首先兆易的资料我刚开始不知道在哪下,问了下管理员他说比赛报名页有,我没听懂,就去其它地方下载了。前期准备工作如下: 1.下载并安装MDK Keil5。可以去ARM官网下载一个最新版的MDK Keil5,目前到5.27版本。主要为了更好的支持GD32E23x的Pack包。破解各位自己应该可以解决。 2.下载并安装GD32E23x系列的Pack包。可以去eeword比赛页面下载,如图1所示。管理人员替大家都准备好了,很贴心。至于Pack包的安装,直接点击安装就好,然后一路Next。注意一定要提前安装好Keil,因为安装Pack包时,会自动识别Keil的安装路径。                                                        3.新建工程模板,或者使用官方的历程。我待会都给大家上传一下。 以下是我的工程结构,如图2所示。                                                     CMSIS--放置系统文件system_gd32e23x.c Fwlib----放置与外设有关的c文件 startup--存放启动文件 Hardware--放置自己写的模块的C文件,如led.c  、key.c等。 Basic-------存放常用的跟处理器外设密切的常用模块的C函数,一般改动不大。如flash.c  Timer.c  Usart.c  delay.c  等。 Doc---------存放一些日志文件,工作记录文件 绿色那个其实就是选择对应的核,这个跟添加跟m23核有关的文件是一样的效果。这个当时没加报了好多错误。 以下几点要注意: a.在设置里面的C/C++里面进行如下两处改动,如图3所示。在Define中加上GD32E231。还有Warnings设置为AC5-like  Warnings,否则的话一直有好多警告。说外设文件里面case语句里面的defaule多余了,其实这个设置改与不改关系不大,此处我参考了官方代码的工程配置。                                                          以下是我自己建的工程模板和官方的示例代码。如有错误,请指正。

最近访客

< 1/1 >

统计信息

已有7人来访过

  • 芯币:34
  • 好友:--
  • 主题:3
  • 回复:10
  • 课时:--
  • 资源:1

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言