8位逻辑339电平灯模块上的LED小灯呈现从右向左两两依次点亮的实验现象,状态间隔为1秒?

上一次我们点亮了一个流水灯 LED1,其实仅仅点亮一个流水灯还是有些单调的。

这一次让我们试着尝试些别的花样

左边的也删掉,因为我并不像重新创建工程

按照昨天的方法新建一个c文件,并添加到工程中(以后也这样,所以请有自己的命名规则,否则都分不清了,而我这里命名的是LED1.1)

b 将代码写上。(假如你要点亮1357这几个流水灯)

c 和上一次一样,接上usb,烧写程序(记得冷启动哦)

这里说明下,因为是在同一个工程中,所以hex文件的名字还是不变的。

这是就可以看到1 3 5 7 流水灯点亮了哦。

手机像素不太好,不过你应该能在板子上看的十分清晰。

2  流水灯的点亮和熄灭

  流水灯一直点亮也有些无聊,来我们让他们动起来吧

  我们已经知道,LED1 = 0; 置于低电平 点亮,

         LED1 = 1; 置于高电平 熄灭

  那如何让一个流水灯点亮一段实践熄灭一段时间呢?

  这里可以用一个延时函数做到。在延时函数中,不做任何事情。

  新建一个c文件,注意你的命名,最好不要出现中文,形成自己的命名规则

  1 为什么用两个for循环?

    应为一个for循环延时时间不够,无法让人有察觉所以用了两个for循环嵌套。这样就有明显的人眼察觉了

  2 为什么第二个for循环后直接是分号

    直接分号,就是不执行任何代码的意思,单纯做延时用。

     仔细观察流水灯,第一个流水灯会点亮一定时间,然后熄灭一定时间,又点亮如此循环下去

     应为有一个while(1)这样的循环,其中为1,即真会一直执行while循环中的语句。

     这也是很重要的一点,很多单片机程序中都有while(1)这样一个循环,

     这是各中单片机自身决定的。有的单片机程序内如果没有循环程序,那它会从头执行到最后,然后返回最开始继 续执行。一直重复。而有的单片机再执行一次之后,就会停止。有的则是执行完后可能会进入无序运行状态,就只不知道程序跑哪里去了! 所以,在写单片机程序的时候,最好是加上while循环,即便你的程序只运行一次,也要在最后加上while(1);使其一直指向这个语句而不会出现误操作。

     还有,这里是不精确的延时,因为一些原因这里无法做到很精确的延时。

   我们将流水灯点亮了,但如何将这些流水灯依次点亮呢?

  a 有些同学会想到这样的方法

   其实这样写也是可以的,你会看到流水灯从1 到 4 依次点亮

   这里写了 P1 = 0xff  这里是说当4个流水灯全部点亮后 ,将整个P1口8为全置1

   即全部熄灭。这样的话,就能看到流水灯依次点亮,全部熄灭,又依次点亮

   其实还有另外一种方法。

      intrins 是一个是一个包含了很多函数的头文件,这里介绍其中的两个函数

      _crol_ 字符循环左移

      _cror_ 字符循环右移

      以_cror_为例

      我们都知道P1口控制流水灯 P1 有八位

      假如写下以下代码

      首先,想要使用_cror_函数,首先需要头文件intrins

      这里定义了一个temp=0x7f //

      P1 = temp 所以最开始是第八个流水灯亮

      for循环表示重复8此该操作

      上面语句的意思是P1口循环右移一位

      所以第七个流水灯就亮了,其他的为1 熄灭。

      这里还有一点,定义了一个延时函数,delay 是一个无返回值的函数

      定义方法有两种,与c语言中一致。

      然后你就会看到。流水灯先亮第八个,然后依次往上点亮,而其他的确熄灭。

      好了,_crol_的用法也是一样的 除了依次点亮,也可以间隔一个点亮

13·内存泄露如何解决?(概率90%)

既然是二次采样,那当然要分为两步了,下面我们来说说每次采样的主要工作:

每打开一个Activity,就记录下来。在需要退出时,关闭每一个Activity即可。 

Activity层数不要太多,太多用户体验太差,手机反应慢,所以在做app的时候,尽量保持不超过3层,第一层main,

18·配置文件中存放什么?(概率60%)

四大组件,意图,权限,第三方key,版本号等

final用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不

可继承。(geitview内部类访问外部类的时候需要加final)

finally是异常处理语句结构的一部分,表示总是执行。(捕获异常的时候用过)

finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此

方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。

21百度地图和谷歌地图的优缺点?(概率60%)

1一打开百度地图页面,显示的就是目前所在城市地图,谷歌地图不然。

2百度地图的界面,百度地图很多都是在显眼位置用文字做提示,一目了然,谷歌界面有点炫,很多用图标来表示,但是用起来相对复杂,不熟悉的用户需要确定这个图标是否是所需要选择的。

而百度地图搜索框下就直接有“公交”“驾车”的选项,界面简洁直接很多,谷歌地图需要点击获取路线,再点击小图标来选择“公交”这些选项,而且图标不够引人注目,使用起来相对复杂些,试想一个很少用网络地图的人分别使用二者地图,那个更方便呢?应该是百度,大多数用户通过地图是查询位置-这个地方在哪,周围有什么地物,查询路线-从一个方到另一个地方如何到达,用百度地图,这些问题很容易解决,而用谷歌地图得摆弄一会儿。

3百度地图的查询路线更好,首先还是界面更简洁直接,然后是数据的问题,先不管为他们提供数据的公司如何,刚刚特意同时查了下,同样地起点和终点, 百度地图给出了5条路线,谷歌地图给出的是4条路线,而且百度地图路线的选择时可以选择“较快捷”“少换乘”“少步行”三种方式,更方便。打车费用也直接 显示出来,而且个人体会10元内的打车费用基本正确。

4百度地图有个视野内搜索功能,可以很方便地查找到目标位置,谷歌地图没有。这个很重要。

5一个重要界面布局问题,百度地图是地图视野在左,而谷歌地图是地图视野在右,我们现在时喜欢从左到右看东西啊,这点百度地图更符合用户习惯。(当然也可能是我常用百度地图,所以这么觉得)

 PS:刚在知乎上有朋友说到——因“左图右列表”强调的是“地图”,反之强调的是“搜索”;我们发现用户在经过这么些年的教育后,“不在乎”地图在哪边,相对其它体验,这一点影响用户选择服务的权重并不高。

6百度地图已经和都市圈合作推出了部分城市如北京、上海、深圳、广州的三维地图,谷歌地图没有。

7百度地图地图视野上方有个截图功能,可以直接拉框截图,谷歌地图没有。 

8以北京实时路况信息为例,直接输入北京查询,百度地图显示的是主城区的实时路况,而谷歌显示的区域很大,包括了密4云、廊坊市了,但是实时路况信息还是显示的主城区,显示路况的彩色条就全挤在一起了,设计得不如百度好。

8使用百度的占大多数,经常可以听到“百度一下啊”的话语。随之带来百度地图的使用率也相对较高。

9百度地图的地图百宝箱、房产、天气等信息。

1如果需要从网络地图上获取数据的话,谷歌地图完胜,而且还有谷歌地球在一旁辅助,如虎添翼,从网上各种各样的谷歌地图相关工具软件就可以看出。

2路线查询时输入地点名称却有多个符合条件时,会给出一个下拉菜单给予选择,同一地点谷歌地图提供的数据精确到街道,而百度地图精确到区。

3谷歌地图可以将侧边栏隐藏起来,看到更大的地图视野,而百度地图是点击全屏来显示更大的视野,两种切换方式比起来谷歌的更舒服。

4谷歌地图有个分享链接功能,而且还提供“粘贴 HTML 以便嵌入到网站”这一功能,百度没有。

5界面布局百度地图更简洁,但是色彩搭配上和画面感上谷歌地图更好。 

6谷歌的品牌形象占优。 

22·安卓的系统架构(概率40%)

批量下载多任务并行下载、自动断点续传、失败自动重试机制、支持大文件(超过2G)下载、异常处理和异常恢复机制、管理下载文件的生命周期(下载文件的增删改查)等,下载过程中需要多页面多方位同步下载进度和下载状态(比如商店APP,A页面开启点击下载,B页面和C页面也可以看到下载进度和暂停这个下载,而D页面 可以删除这个下载,无论哪个页面有操作,其它页面都会收到响应的回调进行更新,并且还可能还需要常驻一个service来把下载情况同步发送到通知栏的),而且需要断点续传节约流量(比如做批量应用更新APP、单个应用自己更新下载新版本、做影视需要批量缓存视频的APP,做MP3歌曲下载APP),除此之外还需要考虑网络状态变化时自动暂停等。

3.照相机拍照指定存储路径,有的时候图片无法存储,大部分手机onActivityResult方法中的data返回为空但个别手机不为空

4.照相机摄像头个数返回不准确,有的手机摄像头方向不正确

5.双卡问题,短信,通话记录,联系人的数据库差异

业务逻辑,维护房间,主播上线通知,异常情况的考虑

221.AIDL(AIDL文件由谁来写 服务器的service满足什么条件 声明的时候加什么权限)(概率50%) 

服务器的service需要添加intent-filter 客户端类要通过 bindService 方式来启动另外一个进程的服务,这样才能实现和服务进行交互。如果通过startService方式来启动服务,则不能与服务进行交互

有时候我们不想所有的程序都可以访问我们的远程服务  所以可以给服务设置权限和过滤:

1.我们在onbind中进行校验 用某种方式 如果验证不通过那么就直接返回null 

然后在onbind中 检查是否有这个权限了  如果没有那么直接返回null即可

Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip。Servlet能够向支持gzip的浏览器返回经gzip编码的HTML页面。许多情形下这可以减少5到10倍的下载时间。

Accept-Language:浏览器所希望的语言种类,当服务器能够提供一种以上的语言版本时要用到。zh-cn

Cookie:这是最重要的请求头信息之一

Host:初始URL中的主机和端口。

1.同步(本质上就是“共享内存”式的通信)

发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是必须一件一件事做,等前一件做完了才能做下一件事

当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的部件在完成后,通过状态、通知和回调来通知调用者。

我要回帖

更多关于 339电平灯 的文章

 

随机推荐