ddllxxrr

个性签名:http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr

  • 2022-01-22
  • 发表了主题帖: 【GD32L233C-START评测】3,移植一个操作系统

    本帖最后由 ddllxxrr 于 2022-1-22 22:13 编辑 移植一个操作系统,这个题目看上去有点怪怪的。我十分讨厌移什么植。我最理想的移植是象RTX那样勾一下就移植好了。 但这次的芯片RTX是灰色的。根本勾不了。          我把目光移到了OSAL,上次我拼命的搞定时器中断就是这个目地,但我看网上移也很麻烦,不是移不了。而是我移完之后怕用起来不爽。        我于是把目光转到了FREERTOS,我觉得也不不太好,考来考去地。          突然看到网友移植RT-THREAD NANO我觉得这个好,于是我又做了一下。特记录一下。           一、下载PACK                  https://www.rt-thread.org/download/mdk/RealThread.RT-Thread.3.1.5.pack        二、双击下载的文件装到MDK上。       三,在绿钻石处,勾选rt-thread核。       四,屏蔽修改中断it.h文件里的:                   //void HardFault_Handler(void)                  //void PendSV_Handler(void)       五,编译一下,提示错误是一段EORR生名,也屏蔽掉。                 //#error "TODO 1: OS Tick Configuration."              这时编译同过了。其实已经移成功了。   以下程序用来检验能否运行:         #include "gd32l23x.h" #include "systick.h" #include "rtthread.h" static rt_thread_t led1_thr = RT_NULL; static void thread_led1_entry(void *parameter); /*! \brief main function \param[in] none \param[out] none \retval none */ int main(void) { systick_config(); /* enable the LED GPIO clock */ rcu_periph_clock_enable(RCU_GPIOA); rcu_periph_clock_enable(RCU_GPIOC); /* configure LED GPIO pin */ gpio_mode_set(GPIOA, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_7 | GPIO_PIN_8); gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_7 | GPIO_PIN_8); gpio_mode_set(GPIOC, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_6 | GPIO_PIN_7); gpio_output_options_set(GPIOC, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_6 | GPIO_PIN_7); /* reset LED GPIO pin */ gpio_bit_reset(GPIOA, GPIO_PIN_7 | GPIO_PIN_8); gpio_bit_reset(GPIOC, GPIO_PIN_6 | GPIO_PIN_7); led1_thr = rt_thread_create( "led1", /*????*/ thread_led1_entry,/*??????*/ RT_NULL,/*????????*/ 256, /*?????*/ 4 , /*?????*/ 20); /*?????*/ rt_thread_startup(led1_thr); while(1) { // /* turn on LED1, turn off LED4 */ // gpio_bit_set(GPIOA, GPIO_PIN_7); // gpio_bit_reset(GPIOC, GPIO_PIN_7); // delay_1ms(500); // /* turn on LED2, turn off LED1 */ // gpio_bit_set(GPIOA, GPIO_PIN_8); // gpio_bit_reset(GPIOA, GPIO_PIN_7); // delay_1ms(500); // /* turn on LED3, turn off LED2 */ // gpio_bit_set(GPIOC, GPIO_PIN_6); // gpio_bit_reset(GPIOA, GPIO_PIN_8); // delay_1ms(500); // /* turn on LED4, turn off LED3 */ // gpio_bit_set(GPIOC, GPIO_PIN_7); // gpio_bit_reset(GPIOC, GPIO_PIN_6); // delay_1ms(500); rt_thread_mdelay(100); } } static void thread_led1_entry(void *parameter) { while(1) { gpio_bit_toggle(GPIOC,GPIO_PIN_7); rt_thread_mdelay(1000); } }     就是闪个灯,编译下载,程序运行正常。             

  • 加入了学习《RT-Thread Nano学习教程》,观看 RT-Thread Nano-通用定时器(按键消抖)-消息队列

  • 2022-01-21
  • 加入了学习《RT-Thread Nano学习教程》,观看 RT-Thread Nano-线程讲解2

  • 加入了学习《RT-Thread Nano学习教程》,观看 RT-Thread Nano-线程创建1

  • 加入了学习《RT-Thread Nano学习教程》,观看 RT-Thread Nano-添加源码

  • 回复了主题帖: 【再见2021,你好2022】明修栈道,暗渡陈苍

    chenzhufly 发表于 2022-1-20 13:28 考的电气工程师?
    电子工程师,本来可以选择电气工程师的

  • 回复了主题帖: 【再见2021,你好2022】明修栈道,暗渡陈苍

    常见泽1 发表于 2022-1-21 16:39 电气注册工程师?
    不是电气是电子工程师。电气主要是PLC之类。也挺好

  • 加入了学习《RT-Thread Nano学习教程》,观看 RT-Thread Nano-rt_kprintf支持

  • 加入了学习《RT-Thread Nano学习教程》,观看 RT-Thread Nano-启动运行流程分析

  • 回复了主题帖: 【再见2021,你好2022】明修栈道,暗渡陈苍

    led2015 发表于 2022-1-20 20:42 掌握无数技能的那种?
    就象国产007,草上飞那种

  • 回复了主题帖: 【再见2021,你好2022】明修栈道,暗渡陈苍

    led2015 发表于 2022-1-20 20:42 一些人在山顶,一些人在山中,回头一看,厉害了,又有无数新人追上来
    恩,并且嗷嗷地

  • 2022-01-20
  • 回复了主题帖: 【再见2021,你好2022】明修栈道,暗渡陈苍

    wangerxian 发表于 2022-1-20 14:26 哈哈,从没接触过电子工程师考试,面试倒是不少~
    慢慢来会接触到地

  • 回复了主题帖: 【再见2021,你好2022】明修栈道,暗渡陈苍

    dql2016 发表于 2022-1-20 13:41 这种考试就是给非专业人事准备的
    恩,有总比没有强

  • 回复了主题帖: 【再见2021,你好2022】明修栈道,暗渡陈苍

    chenzhufly 发表于 2022-1-20 13:28 考的电气工程师?
    是,现在是混成旅

  • 发表了主题帖: 【再见2021,你好2022】明修栈道,暗渡陈苍

    2021马上就过去了,今天是1月20号,农历大寒,我听到一个消息,说如果清朝中国打败了西方,现在的世界基本上都用农历了。 反正我觉得农历是准了,而大寒正好在四九上。      过去的一年是忙碌的一年,尤其从后半年以来从研发到调试,再到生产,生产中的维修。我基本上半年没有在电脑前坐过半天的时间。 然而,让我想不到的是有个考电子工程师的好事,让我给碰到了。我买了指定的用书,就这样,白天上班,晚上九点后看几眼。      还好,童诗白的书又让我看了个遍,把以前迷糊的东东,又补了一下。比如:什么是电流反馈,什么是并联反馈。等等。      正当我谁备计算题的时候,开始考了,让我惊讶的是全是选择判断题。并且马上给分,电脑答题。我手忙脚乱地答完了。      成绩公布了,我以微弱的分数。通过了电子工程师的考试。       我这个做法给我一个印象就是,明修栈道,暗渡陈苍,虽然,汉中已经归晋。但留下的史实确给人明签。         具往矣,过得好不好,还得看明年。

  • 发表了主题帖: 【GD32L233C-START评测】2,定时器中断

    由于某种原因,要用到定时器中断,看看例程可以说没有,于是我就自己上阵了。   我查了库函数手册,加了定时器1中断允许,也在gd32l23x_it.c中加入了如下函数: void TIMER1_IRQHandler(void) { timer_flag_clear(TIMER1, TIMER_FLAG_UP); gd_eval_led_toggle(LED1); } 但是编译后不好用,打断点就是不进入。 我在网上找了半天也无果,我就试着加入了总中断允许。就是nvic_irq_enable部分,这下好了。 timer_interrupt_enable(TIMER1,TIMER_INT_UP); nvic_irq_enable(TIMER1_IRQn ,1);   全部代码是我从例程修的: void timer_config(void) { /* ----------------------------------------------------------------------- TIMER2CLK is 100KHz TIMER2 channel duty cycle = (25000/ 50000)* 100 = 50% ----------------------------------------------------------------------- */ timer_oc_parameter_struct timer_ocintpara; timer_parameter_struct timer_initpara; rcu_periph_clock_enable(RCU_TIMER1); timer_deinit(TIMER1); /* TIMER configuration */ timer_struct_para_init(&timer_initpara); timer_initpara.prescaler = 639; timer_initpara.alignedmode = TIMER_COUNTER_EDGE; timer_initpara.counterdirection = TIMER_COUNTER_UP; timer_initpara.period = 49999; timer_initpara.clockdivision = TIMER_CKDIV_DIV1; timer_init(TIMER1, &timer_initpara); /* configurate channel */ // timer_channel_output_struct_para_init(&timer_ocintpara); // timer_ocintpara.ocpolarity = TIMER_OC_POLARITY_HIGH; // timer_ocintpara.outputstate = TIMER_CCX_ENABLE; // timer_channel_output_config(TIMER2, TIMER_CH_0, &timer_ocintpara); // /* configure TIMER channel output pulse value */ // timer_channel_output_pulse_value_config(TIMER2, TIMER_CH_0, 25000); // /* configurate channel in PWM mode0 */ // timer_channel_output_mode_config(TIMER2, TIMER_CH_0, TIMER_OC_MODE_PWM0); // timer_channel_output_shadow_config(TIMER2, TIMER_CH_0, TIMER_OC_SHADOW_DISABLE); timer_interrupt_enable(TIMER1,TIMER_INT_UP); nvic_irq_enable(TIMER1_IRQn ,1); timer_counter_value_config(TIMER1,0); timer_interrupt_flag_clear(TIMER1, TIMER_INT_FLAG_UP); /* auto-reload preload enable */ timer_auto_reload_shadow_enable(TIMER1); /* auto-reload preload enable */ timer_enable(TIMER1); } 至于定时的时间,还有待进一步研究。  

  • 2022-01-19
  • 发表了主题帖: 【GD32L233C-START评测】1,收到开发板

    本帖最后由 ddllxxrr 于 2022-1-19 21:15 编辑 很高兴今天上午就收到了开发板: 在里边板子从套子里分离了出来,好在没有什么大碍。 资料很好找,打开www.GD32mcu.com中的资料下载,里边什么都有,包括PACK文件,都有。 http://www.gd32mcu.com/cn/download/0?kw=GD32L2   下了个KEIL支持的PACK文件。并跑了一下LED那个例程,一切顺利。   我想说的是在国产的MCU里边,资料搞得这么全的,我想还是头一家。 先点个赞,欲知后事如保且看下回评测。   看了下介绍:   Arm® Cortex®-M23是Cortex®-M0和Cortex®-M0+的继任者,基于最新的Armv8-M架构的嵌入式微处理器内核。采用冯诺依曼结构二级流水线,支持完整的Armv8-M基准指令集,最大限度地提高了代码的紧凑性。并兼容所有的Armv6-M指令,可以帮助工程师轻而易举地将代码从Cortex®-M0/M0+处理器转移至Cortex®-M23。全新的Cortex®-M23内核配备了单周期硬件乘法器、硬件除法器、硬件分频器、嵌套向量中断控制器(NVIC)等独立资源,并强化了调试纠错与追溯能力更易于开发。后续产品亦可以通过加载TrustZone®技术,以硬件形式支持可信和非可信软件强制隔离与防护,出色实现多项安全需求。   原来是从MO+发展而来地。唉!感觉发展太快。    

  • 2022-01-06
  • 回复了主题帖: 【第二批入围名单】兆易创新GD32L233评测活动

    榜上有名

  • 回复了主题帖: 【再见2021,你好2022】你总结,我送礼!

    这么快么????

  • 2021-12-27
  • 回复了主题帖: 请问 和PROTEL99SE兼容性最好的Altium Designer是哪个版本(包括DXP版本)

    DXP同protel 99兼容最好

统计信息

已有15898人来访过

  • 芯积分:238
  • 好友:54
  • 主题:707
  • 回复:10197
  • 课时:2
  • 资源:15

留言

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


azza333 2019-8-15
您好
LY941128 2018-2-1
你好,就是那个老美的滤波器的设计资源的第二部分下不了了。。。
泉盛电子 2014-11-15
...
307989542 2013-6-19
专业PCB生产厂家 板厚0.8--1.6 喷锡 尺寸5x5cm做10pcs之内50元 尺寸10* 10cm做10pcs之内100元(双面板所有拼版一款加50) 标准算法:(对数量及大小不符合以上规定的按下面算法进行) 货款:工程费+菲林费+板费 (工程费100元 菲林费5分/C㎡ 板费:5分/C㎡) 单,双层板: (杂油一律不加收如何费用) (喷锡无铅或者有铅工艺任选,不加收费用) 公司推行单双面12H 24H 48H 快速打样加急出货(免收测试费,飞针测试出货) 12H加急费500元 24小时加急板 加急费200元 48小时加急板 100元 批量价格:380元/平米起 联系人: 侯R 电 ... ...
626qinxiaomei 2013-4-22
你好,我想问一下,你写过让LM3S8962和LM3S2110实现双机通讯的程序吗?可不可以帮帮我,我搞不懂了。。。万分感谢
cuanli007 2012-8-10
就是串口中断进不去看一下谢谢 #include "msp430x14x.h" //#include "io430.h" //#include "nbc430.h" #include <stdio.h> #include <string.h> #include "GPS.h" #include "LCD.h" #include "display.h" char    rev_buf ;        //接收缓存      uchar   rev_start = 0;     //接收开始标志       uchar   rev_stop  = 0;  &nbs ... ...
查看全部