当前位置: 首页 > 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.sadfv.cn/news/55848/

相关文章:

  • 绍兴手机网站建设网站内页
  • dedecms做门户网站开发app需要多少钱?
  • 太原网站建设总部在哪wordpress主题显示不完整
  • 有男女做暖暖的视频网站ps网页素材
  • 有做网站的吗 优帮云面备案网站建设
  • 软件发布网站源码好的网站设计机构
  • 有哪些做问卷调查的网站好天门做网站
  • 如何优化网站tkddw和sql做网站
  • 东莞建站公司运转全网天下有 名电子商务专业怎么样
  • 微网站免费搭建平台wordpress顺序
  • 网站怎么经营网站建设哪家公司便宜
  • 网站优化软件方案网站ftp查询
  • 如何做个网站推广自己产品在线设计平台有什么用
  • 做律师事务所网站专业手机网站建设
  • 营销网站建设大概费用用自己的服务器做网站
  • 搭建网站赚钱网页设计与制作教学计划
  • 涉县企业做网站推广dw一个完整网页的代码
  • 廊坊网站建站购物网站app推广方案
  • 广州营销型网站制作汕头企业建站系统模板
  • 查看网站被百度收录关闭wordpress评论 通过修改代码的方法
  • 杭州网站设计的公司祁阳seo
  • 牡丹江建设网站wordpress阿里云云存储
  • 山东省建设局网站宽带
  • 在线模版下载网站网站怎么加统计代码
  • 不注册公司可以做网站吗网线制作实训报告心得体会
  • 网站虚拟主机是什么郑州广告公司网站建设
  • 建设用地规划证查询网站建设工程概念内容
  • 东莞非凡网站建设做网站数据库怎么做
  • 中英文企业网站php源码网站建设公司帮企业建站的目的
  • 江西工厂网站建设wordpress 取消评论