当前位置: 首页 > news >正文

福州网站公司做网站有什么好处吗

福州网站公司,做网站有什么好处吗,专业做生鲜的网站,内江网络推广公司版权所有#xff0c;转载请说明转自原创作者#xff1a;南京邮电大学 通信与信息系统专业 研二 魏清五#xff0e;SPI测试代码对于SPI总线驱动#xff0c;我们可以分为SPI控制设备驱动和SPI接口设备驱动。而作为驱动开发人员主要是像SPI移植的时候一样会添加SPI控制设备和…版权所有转载请说明转自原创作者南京邮电大学  通信与信息系统专业 研二 魏清五SPI测试代码对于SPI总线驱动我们可以分为SPI控制设备驱动和SPI接口设备驱动。而作为驱动开发人员主要是像SPI移植的时候一样会添加SPI控制设备和SPI接口设备的私有数据同时驱动开发人员还需要会开发SPI接口设备驱动而我们这个SPI测试实验中我们使用的是内核自带的SPI接口设备驱动代码spidev.c。我们也对内核给的SPI测试代码spidev_test.c进行了修改。同时我们利用mini2440自带的两个SPI接口(spi0和spi1)测试过程中我们只使用spi1根据查找datesheet我们知道spi1的SPIMISO1是GPG5也就是CON4的19引脚。spi1的SPIMOSI1是GPG6也就是CON4的20引脚。所以我们这个应用层测试代码采用自发自收方式所以需要将CON4的19引脚和CON4的20引脚短接。实验环境内核linux2.6.32.2arm-linux-gcc交叉编译器mini2440开发板。内核配置配置时候我们需要选中spi.c spi_gpio.c   spi_s3c24xx.c  spi_bitbang.c  spi_s3c24xx_gpio.cspidev.c文件具体测试代码如下#include#include#include#include#include#include#include#include#include#define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))static void pabort(const char *s){perror(s);abort();}static const char *device /dev/spidev1.0;//设备名static uint8_t mode;static uint8_t bits 8;static uint32_t speed 500000;static uint16_t delay;static void transfer(int fd){int ret;uint8_t tx[] {      //定义待发送的数据0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,0x40, 0x00, 0x00, 0x00, 0x00, 0x95,0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,0xDE, 0xAD, 0xBE, 0xEF, 0xBA, 0xAD,0xF0, 0x0D,};uint8_t rx[ARRAY_SIZE(tx)] {0, };struct spi_ioc_transfer tr {.tx_buf (unsigned long)tx,   //定义发送缓冲区指针.rx_buf (unsigned long)rx,   //定义接收缓冲区指针.len ARRAY_SIZE(tx),.delay_usecs delay,.speed_hz speed,.bits_per_word bits,};ret ioctl(fd, SPI_IOC_MESSAGE(1), tr);//执行spidev.c中ioctl的default进行数据传输if (ret 1)pabort(cant send spi message);for (ret 0; ret ARRAY_SIZE(tx); ret) {if (!(ret % 6))puts();printf(%.2X , rx[ret]);      //打印接收到的数据}puts();}int main(int argc, char *argv[]){int ret 0;int fd;mode | SPI_CPHA;mode | SPI_CPOL;mode ~SPI_CS_HIGH;fd open(device, O_RDWR);       //打开/dev/spidev1.0if (fd 0)pabort(cant open device);ret ioctl(fd, SPI_IOC_WR_MODE, mode);  //SPI模式设置可写if (ret -1)pabort(cant set spi mode);ret ioctl(fd, SPI_IOC_RD_MODE, mode); //SPI模式设置可读if (ret -1)pabort(cant get spi mode);ret ioctl(fd, SPI_IOC_WR_BITS_PER_WORD, bits);  //SPI的bit/word设置可写if (ret -1)pabort(cant set bits per word);ret ioctl(fd, SPI_IOC_RD_BITS_PER_WORD, bits);   //SPI的bit/word设置可读if (ret -1)pabort(cant get bits per word);ret ioctl(fd, SPI_IOC_WR_MAX_SPEED_HZ, speed);     //SPI的波特率设置可写if (ret -1)pabort(cant set max speed hz);ret ioctl(fd, SPI_IOC_RD_MAX_SPEED_HZ, speed);   //SPI的波特率设置可读if (ret -1)pabort(cant get max speed hz);printf(spi mode: %d\n, mode);printf(bits per word: %d\n, bits);printf(max speed: %d Hz (%d KHz)\n, speed, speed/1000);transfer(fd);                                                        //数据传输close(fd);return ret;}测试结果虚拟机下编译arm-linux-gcc  spi_test.c  -o  spi_test在超级终端下运行./spi_test可以见到0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,0x40, 0x00, 0x00, 0x00, 0x00, 0x95,0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,0xDE, 0xAD, 0xBE, 0xEF, 0xBA, 0xAD,0xF0, 0x0D,
http://www.yutouwan.com/news/55848/

相关文章:

  • 给别人做网站打电话推销外贸流程实训报告
  • 网站建设功能要求有没有专门做中考卷子的网站
  • 网站建设业务开展方案中式风格装修效果图
  • 盘锦做网站电话网站开发自学时间
  • 上海网站建设设计制作横栏建设网站
  • 怎样创建企业网站网站头部导航样式
  • 网站建设需要提供功能目录吗软件前端开发
  • 网站开发需要那些技术人员大兴区制作网站的公司
  • 建设网站需要什么技术支持沈阳网站制作机构
  • 西红柿怎么做网站wordpress 安装中文字体
  • 电商企业网站建设方案网站建设网站制作价格
  • wordpress cms杭州seo公司服务
  • 网站 mssql 数据库app开发需求
  • 贵州住房和城乡建设部网站济南建设设备安装有限责任公司官网
  • wix做中文网站怎么样做网站需要提交
  • 星月网络公司做的网站深圳手机端网站建设设计公司
  • 建设网站需要哪些素材网站图片翻页怎么做
  • 友情链接地址电影网站如何优化
  • 偃师 做网站外贸网站怎样做
  • 内蒙古网站建设流程检察机关门户网站建设
  • 网站建设面试题装饰工程有限公司
  • 网站建设套餐方案电商网站开发 知乎
  • 泉州英文网站建设网站建设玖首选金手指
  • 网站备案有什么用广州开发区医院
  • 加油站建设专业网站设计站
  • 做外贸soho网站的公司一般营销方式三大步骤
  • 哈尔滨松北区建设局网站wordpress换行命令
  • 做视频网站注意什么软件网站的优化承诺
  • 绍兴以往网站招工做打开qq邮箱进入wordpress
  • 一个网站为什么做的不好看精品资料网官方网站