void WriteNum(uchar row,uchar col,uchar num) { if (row == 1) row = 0x80 + col; else row = 0xC0 + col; writecom(row); PORTD|=(1<<RS); PORTD&=~(1<<RW); PORTD|=(1<<EN); PORTC = num; s_ms(500); PORTD&=~(1<<EN); }中的writecom(row);什么意思
时间: 2024-03-07 09:53:10 浏览: 97
在LCD1602液晶屏上进行操作时,需要发送不同的指令来控制LCD的行为,比如设置光标位置、清屏、打开显示等。这些指令都是通过向LCD的命令寄存器中写入不同的命令码来实现的。
在这个函数中,`writecom(row)`的作用就是向LCD的命令寄存器中写入一个命令码,以设置LCD的光标位置。具体来说,`row`参数用来指定要移动光标到哪一行,`col`参数用来指定要移动到哪一列。函数中第一行的代码通过判断`row`的值,计算出对应的命令码并存储到`row`变量中。然后调用`writecom(row)`函数,将命令码写入LCD的命令寄存器中,以实现光标的移动。
相关问题
void WriteNum(uchar row,uchar col,uchar num) { if (row == 1) row = 0x80 + col; else row = 0xC0 + col; writecom(row); PORTD|=(1<<RS); PORTD&=~(1<<RW); PORTD|=(1<<EN); PORTC = num; s_ms(500); PORTD&=~(1<<EN); }为什么这样就可以写入进去
这段代码是用来在LCD1602液晶屏上显示数字的函数。具体来说,通过设置LCD的行和列,将光标移动到指定位置,然后将数字写入LCD的数据寄存器中,最后通过控制LCD的使能引脚,将数据写入LCD中。
其中,PORTD控制LCD的RS、RW、EN引脚,PORTC用来传输数据。RS引脚用来选择写入命令还是写入数据,RW引脚用来选择读取还是写入操作,EN引脚用来控制LCD的使能。函数中的s_ms(500)是通过延时函数产生的一个短暂的脉冲,用来触发LCD的写入操作。
总的来说,这段代码的实现原理是通过控制LCD的引脚和数据传输来实现数字显示的功能。
hivesql实现拆分[{"group":"tx_after_uid_key","writeNum":7219368}, {"group":"bankcard_recommend_user_feature_v1","writeNum":318984649}]
在Hive SQL中,如果你想要拆分这个JSON数组,通常是通过`UNNEST`函数来展开JSON对象,然后你可以使用`GROUP BY`对每个`group`字段进行分组并计算`writeNum`的总计或平均值。这里是一个基本的示例,假设你有一个名为`json_data`的列,其中包含你提供的JSON数组:
```sql
CREATE TEMPORARY TABLE temp_table AS
SELECT
json_data.group,
SUM(json_data.writeNum) as total_write_num
FROM
(SELECT UNNEST([json_data]) as json_data FROM your_table_name) t
GROUP BY
json_data.group;
```
这将创建一个临时表`temp_table`,其中包含每个`group`对应的`writeNum`总和。
如果你想获取每个`group`的写入次数,你可以直接使用`writeNum`字段,无需计算总和,只需去掉`SUM`关键字:
```sql
CREATE TEMPORARY TABLE temp_table AS
SELECT
json_data.group,
json_data.writeNum
FROM
(SELECT UNNEST([json_data]) as json_data FROM your_table_name) t
GROUP BY
json_data.group, json_data.writeNum;
```
如果你还有其他需求,比如查询特定`group`的写入次数,可以添加`HAVING`子句:
```sql
CREATE TEMPORARY TABLE temp_table AS
SELECT
json_data.group,
json_data.writeNum
FROM
(SELECT UNNEST([json_data]) as json_data FROM your_table_name) t
GROUP BY
json_data.group, json_data.writeNum
HAVING
json_data.group = 'tx_after_uid_key';
```
阅读全文