【bearpi】sle_uart demo 问题点(持续修复中…)

环境:bearpi_h2821开发板
示例代码:sle_uart

bug1: server先开机,client连接后对端收不到数据

在这里插入图片描述
现象:client扫描连接跑在了server初始化之前,进不了连接状态更新的回调,状态没有成功切换,导致后续server发送数据报 sle client is not connected

解决方案:注册和开始广播的部分代码放到初始化OK之后
1.删掉sle_enable_server_cbk中sle_uart_server_adv_init的调用
在这里插入图片描述
2.把sle_uart_server_adv_init放到sle_uart_server_init中的init ok之后在这里插入图片描述
改善后:
在这里插入图片描述

bug2: server断连,client状态切换太慢

现象:server复位或者断电, client仍显示连接,导致二次连接变慢
解决方案:client端 sle_connect_state_changed_cbk增加连接参数更新的代码

sle_connection_param_update_t conn_param = {0};
conn_param.conn_id = get_connect_id();
conn_param.interval_max = 40;
conn_param.interval_min = 20;
conn_param.max_latency = 0;
conn_param.supervision_timeout = 100;
sle_update_connect_param(&conn_param);

在这里插入图片描述

在PowerBuilder 9.0实现该功能,需要以下步骤: 1. 创建一个连接到Oracle数据库的数据窗口,并创建一个名为dw_gh_user的数据窗口对象,该对象与gh_user表进行关联。 2. 在窗口上添加5个文本框控件sle_1、sle_2、sle_3、sle_4、sle_5,用于输入jzkh、jzxm、password、address、phone字段的值。 3. 在窗口上添加一个注册按钮btn_register,并在单击事件编写插入数据的代码。 4. 编写插入数据的代码,将文本框的值插入到gh_user表对应的字段列。代码如下: ``` // 获取文本框的值 string ls_jzkh = sle_1.Text string ls_jzxm = sle_2.Text string ls_password = sle_3.Text string ls_address = sle_4.Text string ls_phone = sle_5.Text // 创建一个SQL语句,向gh_user表插入数据 string ls_sql = "INSERT INTO gh_user(jzkh, jzxm, password, address, phone) " ls_sql += "VALUES(:1, :2, :3, :4, :5)" // 创建一个SQLCA对象,并连接到数据库 SQLCA sqlca = CREATE SQLCA sqlca.DBMS = "O90 Oracle" sqlca.LogId = "用户名" sqlca.LogPass = "密码" sqlca.ServerName = "服务器名" sqlca.AutoCommit = FALSE sqlca.Connect() // 创建一个动态SQL语句对象,并将参数设置为文本框的值 SQLDynamic lsd_sql lsd_sql.Prepare(ls_sql, sqlca) lsd_sql.SetTransObject(sqlca) lsd_sql.SetParameter(1, ls_jzkh) lsd_sql.SetParameter(2, ls_jzxm) lsd_sql.SetParameter(3, ls_password) lsd_sql.SetParameter(4, ls_address) lsd_sql.SetParameter(5, ls_phone) // 执行SQL语句,插入数据 lsd_sql.Execute() // 提交事务 sqlca.Commit() // 关闭数据库连接 sqlca.Disconnect() ``` 通过以上代码,可以实现将文本框sle_1、sle_2、sle_3、sle_4、sle_5的内容插入到Oracle数据库表gh_user的jzkh、jzxm、password、address、phone字段列的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值