07 2011 档案

摘要:本系统以MC9S12XS128作为主控制模块,路线检测模块采用红外对管(参考型号ST188),测速模块采用红外透射式传感器(参考型号ST130A),电机驱动用智能车内部器件MC33886,键盘采用行列式,显示采用LCD液晶模块(参考型号FYD12864),控制算法主要使用PID。利用FreeScale的集成开发环境进行开发,采用BDM进行调试。通过PID算法,对参数进行调节,对小车的速度进行提升,稳定性进行增强,最后小车能够稳定快速的进行巡线,平均速度可达到2m/s,可绕赛道连续的巡线任意圈而不冲出赛道。 阅读全文
posted @ 2011-07-26 17:22 justinzhang 阅读(517) 评论(0) 推荐(0) 编辑
摘要:SQL Server 2008数据库的导入、导出和Mysql的导出还有一定的区别,刚开始的时候完全摸不到方向,利用Microsoft SQL Server Management Studio进行导入、导出操作。 1.导出 默认为flase 改为true 三个都全选 2.恢复 一定要是saveenergy哈 把sql 语句 复制过来执行即可 阅读全文
posted @ 2011-07-26 17:03 justinzhang 阅读(63830) 评论(3) 推荐(0) 编辑
摘要:节能项目从去年开始做,前几天又突然冒出来,这也是我到目前接到的比较大的项目,总体上说还是成功的。项目经费10多W,我们项目组有六个人,三个软件、三个硬件,合作对象是有政府背景的老板,人品总体还不错,作为学生来说,可以接到这种项目还是挺不容易的,我觉得项目能够要价这么高的主要原因是该项目软硬结合。 我在项目中,主要负责了网站的开发,虽然我一直鄙视做网站的,认为这些事情不该自己做的,但是在利益的诱... 阅读全文
posted @ 2011-07-26 16:57 justinzhang 阅读(438) 评论(0) 推荐(0) 编辑
摘要:如果表A的主关键字是表B中的字段,则该字段称为表B的外键,表A称为主表,表B称为从表。外键是用来实现参照完整性的。 在我的数据中,有两张表,一张是light,一张是collector. 下图是light表,里面的字段collectorid是表collector的主键,对于light表来说,collectorid是它的外键: 下图是collector表,collectorid是这个表的主键, 在Mi... 阅读全文
posted @ 2011-07-26 16:17 justinzhang 阅读(4414) 评论(0) 推荐(0) 编辑
摘要:部署环境为:windows server 2008+IIS7.0+SQL Server 2008 开发环境为:VS2010+WebAppToolkitMobileVS2010.Setup.exe+SQL Server 2008 前几天,一个ASP.net MVC3的项目,在本机上调试通过了,但是在部署的时候遇到很多问题,以前都在相同的环境下很轻松的就完成部署了,而这次却显得困难重重,但是感到非常的... 阅读全文
posted @ 2011-07-26 15:17 justinzhang 阅读(3656) 评论(0) 推荐(0) 编辑
摘要:在ASP .net MVC的应用程序中,需要在web.config中配置连接字符串来连接数据库,在部署到具体的服务器上的时候,就需要查看指定服务器上SQL Server的连接字符串,下图是在windows server 2008中的SQL Server 2008的界面。下面是web.config文件: 1 <?xml version="1.0" encoding="utf-8"?> 2 <!-- 3 For more information on how to configure your ASP.NET application, pl 阅读全文
posted @ 2011-07-26 14:39 justinzhang 阅读(4654) 评论(0) 推荐(0) 编辑
摘要:http://crazythief.com/KB/0742898b-32ec-4e6f-b9af-f1409104f70e "Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, Pub... 阅读全文
posted @ 2011-07-26 13:00 justinzhang 阅读(628) 评论(0) 推荐(0) 编辑
摘要:以前从来没有写个sql脚本,由于项目需要,我必须往数据库中插入自上周以来,到现在的每一分钟的数据,刚开始的时候,以为用C++连接上数据库,然后每隔一分钟往表中插入数据,但是觉得好像也不是很方便,所以就选择使用SQL语言来实现了,事实证明SQL脚本是非常强大的,对于日期的各种操作、对于随机数的支持,直接贴代码,备忘:/*先清空carflow中的数据,用delete from table删除几十万条数据会非常的慢,因为要写日志文件*/truncate table [saveenergy].[dbo].[carflow] declare @collectorid1 intselect @collec 阅读全文
posted @ 2011-07-25 23:19 justinzhang 阅读(3904) 评论(0) 推荐(0) 编辑
摘要:今天用Python提取了Linux内核源代码的目录树结构,没有怎么写过脚本程序,我居然折腾了2个小时,先是如何枚举出给定目录下的所有文件和文件夹,os.walk可以实现列举,但是os.walk是只给出目录名和文件名,而没有绝对路径。使用os.path.listdir可以达到这个目的,然后是创建目录,由于当目录存在是会提示创建失败的错误,所以我先想删除所有目录,然后再创建,但是发现还是有问题,最好还是使用判断如果不存在才创建目录,存在时就不创建,贴下代码: 1 # @This script can be used to iterate the given directory,and create 阅读全文
posted @ 2011-07-25 23:03 justinzhang 阅读(1325) 评论(1) 推荐(0) 编辑
摘要:到http://git-scm.com/ 下载git安装程序。 直接双击进行安装。 安装完成后启动Git Bash 进入命令行界面: 执行git clone命令拷贝linux源代码,git版本库地址是: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git http://git.kernel.org/pub/sc... 阅读全文
posted @ 2011-07-18 20:59 justinzhang 阅读(6848) 评论(1) 推荐(0) 编辑
摘要:A master boot record (MBR) is a type of boot sector popularized by the IBM Personal Computer.[1] It consists of a sequence of 512 bytes located at the first sector of a data storage device such as a h... 阅读全文
posted @ 2011-07-18 20:52 justinzhang 阅读(374) 评论(0) 推荐(0) 编辑
摘要:在一个c文件中定义一个变量,在另外的c文件中引用该文件中的变量,变量默认是extern的,也就是对外部可见的,如果使用了static声明,那么这个变量就是对这个文件可见,其他模块是不可见的: 如下例: 阅读全文
posted @ 2011-07-18 20:41 justinzhang 阅读(537) 评论(0) 推荐(0) 编辑
摘要:对二维指针进行sizeof运算是什么意思呢?(c08:Quoter.cpp)屏幕剪辑的捕获时间: 2011-07-17 10:19得到的结果如下所示:Sizeof quotes = 36,正好是指针的大小×一维指针的个数,sizeof *quotes是计算一维指针的大小,所以对二维指针进行sizeof 运算,得到的结果是二维指针中包含的一维指针的个数×一位指针的长度。 阅读全文
posted @ 2011-07-18 20:38 justinzhang 阅读(504) 评论(0) 推荐(0) 编辑
摘要:一、定义 1.原码 正数的符号位为0,负数的符号位为1,其它位按照一般的方法来表示数的绝对值。用这样的表示方法得到的就是数的原码。 【例2.13】当机器字长为8位二进制数时: X=+1011011 [X]原码=01011011 Y=+1011011 [Y]原码=11011011 [+1]原码=00000001 [-1]原码=10000001 [+127]原码=01111111 [-127]原码=1... 阅读全文
posted @ 2011-07-18 20:36 justinzhang 阅读(5919) 评论(0) 推荐(1) 编辑
摘要:有如下代码: 1: #include <stdio.h> 2: 3: #include <string.h> 4: 5: #include <malloc.h> 6: 7: #include <stdlib.h> 8: 9: typedef struct AA 10: 11: { 12: 13: int b1:5; 14: 15: int b2:2; 16: 17: }AA; 18: 19: in... 阅读全文
posted @ 2011-07-18 20:30 justinzhang 阅读(405) 评论(0) 推荐(0) 编辑
摘要:1. /kernel/irq.c softirq_init 2.6.32.25 1.1 for_each_possible_cpu for ( ( ( cpu ) ) = - 1 ; ( ( cpu ) ) = cpumask_next ( ( ( cpu ) ) , ( cpu_possible_mask ) ) , ( ( cpu ) ) < nr_cpu_ids ; ) 1.2 per_cp... 阅读全文
posted @ 2011-07-18 20:16 justinzhang 阅读(923) 评论(0) 推荐(0) 编辑
摘要:调用spin_lock_irqsave(&chip->lock,flags); 的下层实现是什么?#define spin_lock_irqsave(lock, flags) \do { \typecheck(unsigned long, flags); \flags = _spin_lock_irqsave(lock); \} while (0) 1: /* 2: 3: * Check at c... 阅读全文
posted @ 2011-07-18 20:10 justinzhang 阅读(3257) 评论(0) 推荐(0) 编辑
摘要:/* * 2011年4月8日22:49:50 * 作者:张超 * email:uestczhangchao@gmail.com * Linux2.6.32.25中如何获得当前进程的指针? */ //Thread_info.h //申明per_cpu_kernel_stack变量,它在其它位置定义,见下文内容. 1: DECLARE_PER_CPU(unsigned long, kernel_st... 阅读全文
posted @ 2011-07-18 20:03 justinzhang 阅读(2078) 评论(0) 推荐(0) 编辑
摘要:问:请教各位大侠:《深入理解linux内核》中,内核同步章节有这样一段话保护可延迟函数(软中断)所访问的数据结构应采取的措施:单处理器上:在单处理器上不存在竞争条件,这是因为可延迟函数(软中断)的执行总是在一个CPU上串行执行--也就是说,一个可延迟函数不会被另一个可延迟函数中断。因此,根本不需要同步原语。 我觉得不太对啊,一个软中断虽然不会被另一个软中断“中断”,但是可能被硬中断“中断”,而硬中... 阅读全文
posted @ 2011-07-18 19:48 justinzhang 阅读(370) 评论(0) 推荐(0) 编辑
摘要:符号链接和硬链接的区别(1)创建一个硬链接可以使用命令ln或者函数link()为文件创建一个链接。#include <unistd.h>int link( const char *path1, const char *path2 );硬链接本身就是一个目录项,(比如文件名+索引节点号),可以将文件名与文件的位置关联起来;符号 链接也称软链接,是指存储了一个字符串的文件。这个字符串可以在路径名解析的过程中,用于修改路径名。目录项对应于单个链接,但是一个索引节点可能有几个链接的目标(对应几个目录项),因此索引节点中包含一个对链接到索引节点的链接数的计数。当用open()创建一个新的文件 阅读全文
posted @ 2011-07-18 16:14 justinzhang 阅读(7014) 评论(3) 推荐(3) 编辑
摘要:闲来无事,又开始学习linux设备驱动程序,以前本来就有一颗内核树,但是是2.6.31的,我下载了最新的2.6.39.1内核,进行了编译,建立了内核树,同时将默认启动的内核改成了最新的内核,通过uname -r命令可以查看,如下图所示:现在把主要的过程记录如下,1、首先到www.kernel.org 下载最新版的内核,将内核解压到/usr/src目录下,使用命令tar jvxf linux-2.6.39.1.tar.bz2,如下图所示:2、切换到linux-2.6.39.1目录中,执行sudo make menuconfig,对内核进行配置:如果没有menuconfig,执行下面的命令,下载相 阅读全文
posted @ 2011-07-18 16:01 justinzhang 阅读(1026) 评论(0) 推荐(0) 编辑
摘要:一、在安装模块是出现如下错误: 查看模块信息的命令,如下所示: 而系统的内核版本是: 屏幕剪辑的捕获时间: 2011-07-04 16:20 所以编译模块用的版本号和系统的内核版本不统一,这样内核就会报错,这个功能是用配置选项CONFIG_MODVERSIONS 决定的,如下图: 其中一种解决办法,http://apps.hi.baidu.com/share/detail/14755964 ,当然... 阅读全文
posted @ 2011-07-18 15:55 justinzhang 阅读(7518) 评论(2) 推荐(0) 编辑
摘要:最近,用2.6.39.1重新编译了内核,重新跑了hello world驱动,建立好了驱动的开发环境,看了一些文档,但是还没有熟练的掌握驱动开发的技术,在这里记录一些心得,备忘。以前在看ldd3的时候,觉得十分的茫然,连内核树是什么都不知道,然后在不知道的某一天,编译了一个内核,虽然建立起了一棵内核树,但是并没有用自己编译的内核来替换现有的内核,对于驱动的链接过程和源代码的目录结构也不熟悉,这里总结如下:源代码目录:/usr/src/linux-2.6.39.1内核的initrd目录:/boot/initrd-img-2.6.39.1grub配置文件目录:/boot/grub/grub.cfg 阅读全文
posted @ 2011-07-18 15:40 justinzhang 阅读(375) 评论(0) 推荐(0) 编辑
摘要:查看当前shell的类型,echo $SHELL $?表示上次命令退出时的状态,使用echo $? 执行前一条命令,!!(fc 命令不可用) 执行第n条命令!n 按住ctrl+r,可以先前搜索执行过的命令,会给出提示: History -c清除历史记录: alias创建命令的别名,alias ll='ls -l' ubuntu 最常用和终端快捷键 源文档 <http://blogold.china... 阅读全文
posted @ 2011-07-18 15:34 justinzhang 阅读(263) 评论(0) 推荐(0) 编辑