智能车库

该博客介绍了一个智能车库管理系统,包括初始化数据库、串口设置、计算校验和、读取卡片ID、随机生成车牌号等功能。系统使用SQLite存储数据,并通过UART进行通信。主要涉及串口操作、数据库交互和数据校验等技术。
摘要由CSDN通过智能技术生成

#include “myhead.h”
#define BEEP_ON 0 //蜂鸣器响
#define BEEP_OFF 1 //蜂鸣器灭

#define DEV_PATH3 “/dev/ttySAC3”
#define DEV_PATH1 “/dev/ttySAC1” // CON2
#define DEV_PATH2 “/dev/ttySAC2”
sqlite3 db = NULL;
volatile unsigned int cardid ;
char license[100];
char pic_name[100];
static struct timeval timeout;
/
int init_sql()
{
int ret;
char *sql = “create table if not exists data(cardid integer primary key not null,license text,picpaht text);”;
ret=sqlite3_open("./data.db", &db);
if(ret!=0)
{
perror(“sqlite3_open is fail\n”);

}	
ret=sqlite3_exec(&db,sql,NULL,NULL,NULL);
if(ret!=0)
{
	perror("sqlite3_exec is fail\n");
}
return 0;

} */
int callback(void *p, int num_col, char **text, char **name)
{
int cnt = 0;

while(cnt<num_col)
{
	printf("%-10s\t|", *(text+cnt));
	cnt++;
}

printf("\n_______________________________________________\n");

printf("\n");

return 0;

}
unsigned char CalBCC(unsigned char *buf, int n)
{
int i;
unsigned char bcc=0;
for(i = 0; i < n; i++)
{
bcc ^= *(buf+i); //buf[i]
}
return (~bcc);
}
int callback1(void *p, int num_of_col, char **text, char **name)
{
printf(“出库车辆车牌号是:%s\n”,text[1]);
printf(“卡号:%#x\n”,text[0]);
printf(“图片路径:%s\n”,text[2]);
int ret = remove(text[2]);
if(ret == 0)
{
printf(“success\n”);
}
else
{
printf(“error\n”);
}
return 0;
}

int uart_set(int uartfd)
{

struct termios  myios;
bzero(&myios,sizeof(myios));
//设置串口工作在本地模式
myios.c_cflag  |=  CLOCAL | CREAD
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值