登录
首页 » Others » 多功能电表软件系统设计

多功能电表软件系统设计

于 2020-11-30 发布
0 184
下载积分: 1 下载次数: 1

代码说明:

电能表的软件系统包括程序数据结构模块、程序初始化与电表运行处理模块、事件分配查询管理处理模块及显示处理模块、通讯处理模块、电量处理模块、时间与时段管理处量模块、电表最大需量处理模块八大部分组成,各个部分都有其特殊的任务,在电表系统中完成它们相应的功能。●●●●程序数据结构部分●●●●●●●●●程序数据结构部分程序数据结构模块是对程序中的数据进行分析,合理的分配数据内存,定义程序涉及的变量。它是根据整个程序的算法来制定的,同时一个好的数据结构对整个程序的编写有非常重要的作用,因此根据电能表软件系列实现的功能及其算法制定合理的数据结构。电能表的数据结构包括两个部分:内存数据结构和数据结构与常量结构。●这个是与常量的数据结构,在显小与数据通讯都会使用这个结构●●●●●●●●●程序常量数据结构部分●●●●数据标示项数据标示表示的正反数据存放的格式数据值的长度数据在与的偏移量数据显示的符号通过此结构可以把所要显示、通讯的数据在或者在存放的位置长度以极标志等内睿取出供所需要的函数使用●●●●程序数据结构部分●●●●●●●●●合相有功功率合相有功瞬时功率电压有校值合电流有校值当前的线频率合功率因数合相电压与电流的夹角当前的电能此结构可以对的计量参数寄存器一次可以全读出,并同时也可以分别取出对应所需要的参数●●●●●●●●●程序初始化与电表运行处理●●●●程序初始化与电表运行处理●程序初始化与电表运行处理模块是对整个程序进行初始化,并对电表运行的六种状态进行转换。程序初始化包括两个部分:初始化和电表各部件初始化。初始化是对各部件进行初始化,为各部件在程序工作时提供合适的初始状态,它包括配置口工作模式、看门狗初始化、定时器初始化、键盘中断初始化、串口中断初始化、初始化等等。电表各部件初始化是对电能表系统各部件进行配置工作状态,初始化它们的工作方式,为程序工作提供电表部件初始状态,它包括指示灯初始化显示初始化、实时时钟初始化、电量恢复、通讯信道、历史电量处理等等部件的初始化。●●●●口工作模式●●●●●●●●●口工作模式如果有没有用到的口,作输入时要通过电阻与或者与连接,作输出时要输出置与置因为设备输入端未连接将会产生工作枚障,如果输入未连接,则由于噪音等原因可能会产生内部输入电平,从而导致故障。如果在上电时口为输入,但电池供电时口的电平为不确定状态时,也应对口作相应的处理●当主时钟切换到副时钟时,应将主时钟的口设为输出置看门狗初始化●●●●●●●●可选字节设定地址:080H/Ls0HrWINDOW1F工NDOWWDCSWDCS1WDCSLSROSC看门狗的开了NDCW1VINDOMO看门狗定封器窗口打开周期窗时间设定为1C5WDTCN看门狗定时器计数器的操作控制/非法汸问检测琹止计数器操怍复位后停止计数),禁止非法访问检测操作允许计数器橾作;愆位后始计敏),氘许非法访闻枱测橾作看门狗定时器HD,FDCS1HDCEO昋门狗定时器溢出吋间0z°/faL(3.88ms)时间间隔设置n/f!(7.76ms):25/土R(3L.03ms0CTL (62, OG sD0125fsL(124.12mE)fL(496.4LSROSC内部低速振蓠器操作看门狗设为不可由软件停1(出将1写入C寄存器的第0红 SESTOP)时停l操作不能停止(即使将1写入 SRSTOP位也不停止操作)能停止单片机内部的看门狗把设为不能停止时为硬看门狗,必须在窗口打开才能清狗否则单片机会复位,●●●●串口中断初始化●●●●●●●●●●由于多功能表有二个供通讯的口,一个供红外通讯口。但单片机只有二个哪么就需要模拟其中一个的分频时钟信号不能得到此时应选的分分频时钟信号模拟红外通讯,需要个外部中断(接收接收管上的电平信号并每要检测屮断口的信号),二个定时器(输出载波与的时间间隔)串口中断初始化有关UART0的寄存器波特率发生控制寄存器0( BRGCO)真出:F? iH Aher reset: 1Fh民WEymarBRGCOTPE01TP90O0 MDLO4MPLSMDLDe MDLoTBLOm(TPS01,TPS00)=(0,0)选择定时器TM50的输出作为TPSDTP500Base cock (IxeLKol selection"fPRs=2 MHz fFRE-5 MHz fFRs-B MHz1FFG-10MH基本时钟TM50 DutpfEgli1 H25 H4 HT5 MHz250kF2H25 kHz1 MH26H2625kH15625kH2250H3125k因为如果选择外围硬件时钟fprs作为基本时钟,那么就不可能产生出1200bps的波特率。MDLO4MDLOS MDLO2 MDLOT MDLOG k Selectian of 5-titcounterx Selng Erchbiled0acLM/B0(MDLO4, MDL03, MDLO2MDL01,ML00)=(0,1,1,0,1),k=13028 fruTa2a scLk/?31t/3

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 鲁棒H∞控制
    针对H无穷大控制,附加Matlab程序,有解释,适合初学者。
    2021-05-06下载
    积分:1
  • 宽度学习 Broad Learning System MATLAB 代码(1):MNIST实践
    澳门大学陈俊龙 | 宽度学习系统:一种不需要深度结构的高效增量学习系统原文 Broad Learning System: An Effective and Efficient Incremental Learning System Without the Need for Deep ArchitectureIEEE Transactions on Neural Networks and Learning Systems, Vol. 29, Issue 1, 2018
    2020-06-25下载
    积分:1
  • LSD直线检测
    LSD直线检测算法具体程序实现,效果很好,需要的可以下载
    2020-12-09下载
    积分:1
  • ansys弹簧单元的使用
    介绍了弹簧阻尼单元combin14的使用方法,实例和命令流实现
    2020-12-04下载
    积分:1
  • 基于VerilogHDL的SPWM全数字算法的FPGA实现
    在详细阐述正弦脉宽调制算法的基础上, 结合DDS 技术, 以Actel FPGA 作为控制核心,通过自然采样法比较1 个三角载波和3 个相位差为1 200 的正弦波, 利用Verilog HDL 语言实现死区时间可调的SPWM 全数字算法,并在Fushion StartKit 开发板上实现SPWM 全数字算法。通过逻辑分析仪和数字存储示波器得到了验证,为该技术进一步应用和推广提供了一个良好的开放平台。
    2020-12-03下载
    积分:1
  • matlab实现CRC
    【实例简介】matlab实现CRC循环校验,内含7个matlab .m文件 分别实现不同方式的CRC编码。
    2021-11-06 00:37:02下载
    积分:1
  • MATLAB写计算有限长序列的DFT和IDFT函数
    MATLAB编写计算有限长序列的DFT和IDFT函数另有一个简单实例
    2020-11-29下载
    积分:1
  • 《高等应用数学的MATLAB求解-第二版》PPT+源
    《高等应用数学问题的MATLAB求解-第二版》(薛定宇,2008)PPT+源程序.
    2020-12-12下载
    积分:1
  • Reflector10.0.4 官方原版 带注册机 破解
    安装顺序:1. 安装、升级原版程序2. 先导入注册表文件 "fix install.reg" [禁止自动更新、离线激活]3. 运行注册机,选择你的 license 类型4. 断开网络连接5. 运行 NET Reflector, 点击 "Activate"6. 输入注册机生成的序列号, 点击 "Activate"7. 在注册失败的提示窗中点击 "Activate Manually"8. 从激活窗口左边的文本框中复制激活请求文本到注册机的第二个文本框中9. 从注册机中复制激活响应文本到激活窗口右边的文本框内,然后依次点击 "Finish", "Close".
    2020-12-10下载
    积分:1
  • MRMR(最小冗余最大相关)算法
    MRMR(最小冗余最大相关)算法以及可执行文件,欢迎下载!!!
    2020-12-07下载
    积分:1
  • 696518资源总数
  • 106155会员总数
  • 8今日下载