Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
flashDB
移植问题
30
flashDB移植遇到问题
发布于 2022-04-04 10:38:56 浏览:1143
订阅该版
大家好,请教一下,我使用rtthread studio 使用软件包flashDB时,一直都不能正常工作,整了一整天也不知道哪里问题,所以上来求助一下。 使用的芯片是兆易GD32F303, fal操作读写分区已经正常, flashD使用例程存在问题,读不出键值boot_count变量失败,也保存不了,使用kvdb show也没有数据出来。打印如图下: ``` \ | / - RT - Thread Operating System / | \ 4.1.0 build Apr 4 2022 09:18:47 2006 - 2022 Copyright by RT-Thread team [D/FAL] (fal_flash_init:49) Flash device | gd32f3_onchip | addr: 0x08000000 | len: 0x00080000 | blk_size: 0x00000800 |initialized finish. [I/FAL] ==================== FAL partition table ==================== [I/FAL] | name | flash_dev | offset | length | [I/FAL] ------------------------------------------------------------- [I/FAL] | bl | gd32f3_onchip | 0x00000000 | 0x00008000 | [I/FAL] | app | gd32f3_onchip | 0x00008000 | 0x00038000 | [I/FAL] | flashDB | gd32f3_onchip | 0x00038000 | 0x00040000 | [I/FAL] ============================================================= [I/FAL] RT-Thread Flash Abstraction Layer initialize success. [FlashDB][kv][env] (../packages/FlashDB-v1.1.2/src/fdb_kvdb.c:1638) KVDB size is 262144 bytes. [FlashDB] FlashDB V1.1.2 is initialize success. [FlashDB] You can get the latest version on https://github.com/armink/FlashDB . [FlashDB][sample][kvdb][basic] ==================== kvdb_basic_sample ==================== [FlashDB][sample][kvdb][basic] get the 'boot_count' failed [FlashDB][sample][kvdb][basic] set the 'boot_count' value to 1 [FlashDB][sample][kvdb][basic] =========================================================== [FlashDB][sample][kvdb][blob] ==================== kvdb_type_blob_sample ==================== [FlashDB][sample][kvdb][blob] create the 'temp' blob KV, value is: 36 [FlashDB][sample][kvdb][blob] set 'temp' value to 38 [FlashDB][kv][env] (../packages/FlashDB-v1.1.2/src/fdb_kvdb.c:866) Not found 'temp' in KV. [FlashDB][sample][kvdb][blob] delete the 'temp' finish [FlashDB][sample][kvdb][blob] =========================================================== msh >kvdb probe flashDB [FlashDB][kv][flashDB] (../packages/FlashDB-v1.1.2/src/fdb_kvdb.c:1638) KVDB size is 262144 bytes. Probed a KVDB | flashDB | part_name: flashDB | sec_size: 2048 | max_size: 262144 |. msh >kvdb show Read data success. The KV data is: ---------------------------------- mode: next generation size: 2032/260096 bytes. ``` main函数如下: ```c int main(void) { int count = 1, tmp = 0xaa; rt_device_t slave_serial; struct rt_device_pwm *tim3_pwm_dev; struct fdb_default_kv default_kv; slave_serial = rt_device_find("uart3"); rt_device_open(slave_serial, RT_DEVICE_OFLAG_RDWR | RT_DEVICE_FLAG_STREAM); tim3_pwm_dev = (struct rt_device_pwm*)rt_device_find("pwm3"); bsp_pin_init(); rt_pin_write(CPU_M1, PIN_HIGH); rt_pin_write(CPU_M2, PIN_HIGH); rt_pin_write(CPU_M3, PIN_HIGH); rcu_periph_clock_enable(RCU_TIMER3); timer3_pwm_init(0, 60000, 0); /* rt_pwm_set(tim3_pwm_dev, 1, 1000, 300); rt_pwm_set(tim3_pwm_dev, 3, 1000, 0); rt_pwm_enable(tim3_pwm_dev, 1); rt_pwm_enable(tim3_pwm_dev, 3);*/ // TIMER_CH0CV(TIMER3) = 1000; // SD2 // TIMER_CH1CV(TIMER3) = 0; // pwm2 // // TIMER_CH2CV(TIMER3) = 1000; // SD1 // TIMER_CH3CV(TIMER3) = 50000; // PWM1 rt_pin_write(CPU_SD1, PIN_HIGH); rt_pin_write(CPU_SD2, PIN_HIGH); fal_init(); fdb_kvdb_init(&kvdb, "env", "flashDB", &default_kv, NULL); extern void kvdb_basic_sample(fdb_kvdb_t kvdb); extern void kvdb_type_blob_sample(fdb_kvdb_t kvdb); kvdb_basic_sample(&kvdb); kvdb_type_blob_sample(&kvdb); while (1) { rt_pin_write(LED_RUN, PIN_HIGH); TIMER_CH3CV(TIMER3) = 50000; // PWM1 TIMER_CH1CV(TIMER3) = 0; // pwm2 rt_thread_mdelay(5000); rt_pin_write(LED_RUN, PIN_LOW); TIMER_CH3CV(TIMER3) = 0; // PWM1 TIMER_CH1CV(TIMER3) = 0; // pwm2 rt_thread_mdelay(1000); TIMER_CH3CV(TIMER3) = 0; // PWM1 TIMER_CH1CV(TIMER3) = 50000; // pwm2 rt_thread_mdelay(5000); TIMER_CH3CV(TIMER3) = 0; // PWM1 TIMER_CH1CV(TIMER3) = 0; // pwm2 rt_thread_mdelay(1000); rt_pin_write(LED_RUN, PIN_HIGH); TIMER_CH3CV(TIMER3) = 10000; // PWM1 TIMER_CH1CV(TIMER3) = 0; // pwm2 rt_thread_mdelay(5000); rt_pin_write(LED_RUN, PIN_LOW); TIMER_CH3CV(TIMER3) = 0; // PWM1 TIMER_CH1CV(TIMER3) = 0; // pwm2 rt_thread_mdelay(1000); TIMER_CH3CV(TIMER3) = 0; // PWM1 TIMER_CH1CV(TIMER3) = 10000; // pwm2 rt_thread_mdelay(5000); TIMER_CH3CV(TIMER3) = 0; // PWM1 TIMER_CH1CV(TIMER3) = 0; // pwm2 rt_thread_mdelay(1000); test(); rt_pin_write(CPU_UT_EN1, PIN_HIGH); rt_device_write(slave_serial, 0,&tmp, 1); } return RT_EOK; } ``` 仔细的看了例程,没见有差异的地方,百思不得解。。
查看更多
2
个回答
默认排序
按发布时间排序
wxfjog
2022-04-06
这家伙很懒,什么也没写!
去掉软件包,重新加入软件包就可以了,具体是什么问题引起,我也不太清楚,大家碰到时不防试试这个方法😆,后面等有空再去研究下是啥问题引起的。
edwardhey
2022-08-17
这家伙很懒,什么也没写!
我遇到和你一样的问题,请问如何去掉软件包和重新加入软件包的?
撰写答案
登录
注册新账号
关注者
0
被浏览
1.1k
关于作者
wxfjog
这家伙很懒,什么也没写!
提问
16
回答
12
被采纳
3
关注TA
发私信
相关问题
1
RT-Thread 在ARM926 EJSA 内核的移植
2
裸机工程移植 RT-Thread
3
Keil MDK 移植 RT-Thread Nano
4
移植 Nano,rt_thread_mdelay()延迟时间不对
5
裸机工程移植 RT-Thread内核
6
跳转不进去main函数
7
我从KEIL 移植过来的 time外部中断定时器是失败的
8
Ambiq Apollo3 移植链接脚本问题
9
可以把 RT-Thread Studio 创建的项目移植到 Keil上面吗?
10
RT_USING_COMPONENTS_INIT 这部分相关的有没有更详细的介绍
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
使用RC522软件包驱动FM1722
2
常量数据类型和表达式陷阱分享
3
进行i2c驱动移植的经验总结
4
在VSCode中使用clang-format
5
我该如何使用这个微雪的WIFI400 WIFI-LPB-100在rtt里或者我该怎样为它开发驱动
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
UART
WIZnet_W5500
ota在线升级
freemodbus
PWM
flash
cubemx
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
编译报错
Debug
rt_mq_消息队列_msg_queue
SFUD
msh
keil_MDK
ulog
C++_cpp
MicroPython
本月问答贡献
出出啊
1517
个答案
342
次被采纳
小小李sunny
1444
个答案
289
次被采纳
张世争
809
个答案
175
次被采纳
crystal266
547
个答案
161
次被采纳
whj467467222
1222
个答案
148
次被采纳
本月文章贡献
catcatbing
3
篇文章
5
次点赞
qq1078249029
2
篇文章
2
次点赞
xnosky
2
篇文章
1
次点赞
Woshizhapuren
1
篇文章
5
次点赞
YZRD
1
篇文章
2
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部