断电记忆、云端控制?智能颈部按摩仪还可以这么玩!

本文介绍了智能颈部按摩仪的两大特色功能:断电记忆和云端控制。断电记忆通过TLSR8253芯片将设备状态存储在flash中,实现断电后状态恢复。云端控制利用单点蓝牙DP点和数组处理,通过APP实现对设备的远程操控和数据上报。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、断电记忆


1、原理
断电记忆的原理是将设备在断电前的各个工作状态写入到空闲的flash闪存中,在下次上电时从flash中读取数据,让设备工作在断电前的工作状态。
TLSR8253芯片flash布局如下:

0x040000 - 0x060000为未使用区域,可将设备状态写入该区域内。

2、实现
(1)写状态到flash

/***********************************************************
*   Function:  write_massage_status_to_flash
*   Input:     none
*   Output:    none
*   Return:    none
*   Notice:    将按摩仪状态写到 flash 中
***********************************************************/
void write_massage_status_to_flash(void)
{
	Flash_Write_Buff[0] = massage_state.on_off;
	Flash_Write_Buff[1] = massage_state.pattern;
	Flash_Write_Buff[2] = massage_state.gear;
	Flash_Write_Buff[3] = massage_state.heat;

	flash_write_page(FLASH_ADDR, FLASH_BUFF_LEN, (unsigned char *)Flash_Write_Buff);

	return;
}

(2)从flash读状态

/**********************************************************************
*   Function:  read_massage_status_to_flash
*   Input:     none
*   Output:    none
*   Return:    none
*   Notice:    从 flash 中读取按摩仪断电前状态,存到按摩仪状态结构体内
**********************************************************************/
void read_massage_status_to_flash(void)
{
	flash_read_page(FLASH_ADDR, FLASH_BUFF_LEN, (unsigned char *)Flash_Read_Buff);

    //将从 flash 读取到的数据,存放到结构体中
    massage_state.on_off = Flash_Read_Buff[0];
    massage_state.pattern =
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值