⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dts_task.lst

📁 本源程序使用C51控制的PLL(SANYO LC72131)收音,可以通过HT1621驱动LCD显示,有完整的按键控制程序模块,能通过KEY进行各种功能操作,整个程序采用模块化设计,移植方便,可以初学
💻 LST
📖 第 1 页 / 共 5 页
字号:
 104          *----------------------------------------------------------------------------
 105          * PURPOSE: 
 106          *   Display task initialization
 107          *----------------------------------------------------------------------------
 108          * EXAMPLE:
 109          *----------------------------------------------------------------------------
 110          * NOTE:
 111          *----------------------------------------------------------------------------
 112          * REQUIREMENTS:
 113          *****************************************************************************/
 114          void dts_task_init (void)
 115          {
 116   1              DTS_DIN = 1;
 117   1              DTS_DOUT = 1; 
 118   1              DTS_CLK = 1;
 119   1              DTS_CE = 0;
 120   1              Mem_add = Mem_StartAdd; /* DTS setp at 24c02 start address */
 121   1              DtsMen_flag = Low;              /* DTS mem pointer flag initializtion */
 122   1              dts_frequency = DTS_FreStart;           /* DTS frequency value initializtion */
 123   1              dts_MemInit();
 124   1              dts_GetFer();
 125   1      
C51 COMPILER V8.01   DTS_TASK                                                              08/07/2006 11:16:10 PAGE 10  

 126   1      }
 127          
 128          /*F**************************************************************************
 129          * NAME: dts_task
 130          *----------------------------------------------------------------------------
 131          * PARAMS:
 132          *
 133          * return:
 134          *----------------------------------------------------------------------------
 135          * PURPOSE: 
 136          *   Display task handling display of clock and scrolling of file name
 137          *----------------------------------------------------------------------------
 138          * EXAMPLE:
 139          *----------------------------------------------------------------------------
 140          * NOTE:
 141          *----------------------------------------------------------------------------
 142          * REQUIREMENTS:
 143          *****************************************************************************/
 144          void dts_task (void)
 145          {
 146   1              ;
 147   1      }
 148          
 149          /*F**************************************************************************
 150          * NAME: dts_divider
 151          *----------------------------------------------------------------------------
 152          * PARAMS:
 153          *
 154          * return:
 155          *----------------------------------------------------------------------------
 156          * PURPOSE: 
 157          *   Display task handling display of clock and scrolling of file name
 158          *----------------------------------------------------------------------------
 159          * EXAMPLE:
 160          *----------------------------------------------------------------------------
 161          * NOTE:
 162          *----------------------------------------------------------------------------
 163          * REQUIREMENTS:
 164          *****************************************************************************/
 165          void dts_divider (void)
 166          {
 167   1              int temp;
 168   1      
 169   1              if(!DtsMen_flag) temp = (dts_frequency + 107);
 170   1                      else temp = (Mem_frequency + 107);
 171   1              DTS_buffer[0] = temp&0x0ff;
 172   1              DTS_buffer[1] = temp>>=8&0x0ff;
 173   1      }
 174          
 175          /*F**************************************************************************
 176          * NAME: dts_FerInc
 177          *----------------------------------------------------------------------------
 178          * PARAMS:
 179          *
 180          * return:
 181          *----------------------------------------------------------------------------
 182          * PURPOSE: 
 183          *   Display task handling display of clock and scrolling of file name
 184          *----------------------------------------------------------------------------
 185          * EXAMPLE:
 186          *----------------------------------------------------------------------------
 187          * NOTE:
C51 COMPILER V8.01   DTS_TASK                                                              08/07/2006 11:16:10 PAGE 11  

 188          *----------------------------------------------------------------------------
 189          * REQUIREMENTS:
 190          *****************************************************************************/
 191          void dts_FerInc (void)
 192          {
 193   1              if(dts_frequency < DTS_FreEnd){
 194   2                      dts_frequency ++;
 195   2                      }
 196   1      }
 197          
 198          /*F**************************************************************************
 199          * NAME: dts_FerDec
 200          *----------------------------------------------------------------------------
 201          * PARAMS:
 202          *
 203          * return:
 204          *----------------------------------------------------------------------------
 205          * PURPOSE: 
 206          *   Display task handling display of clock and scrolling of file name
 207          *----------------------------------------------------------------------------
 208          * EXAMPLE:
 209          *----------------------------------------------------------------------------
 210          * NOTE:
 211          *----------------------------------------------------------------------------
 212          * REQUIREMENTS:
 213          *****************************************************************************/
 214          void dts_FerDec (void)
 215          {
 216   1              if(dts_frequency > DTS_FreStart){
 217   2                      dts_frequency --;
 218   2                      }
 219   1      }
 220          /*F**************************************************************************
 221          * NAME: dts_GetFer
 222          *----------------------------------------------------------------------------
 223          * PARAMS:
 224          *
 225          * return:
 226          *----------------------------------------------------------------------------
 227          * PURPOSE: 
 228          *   Display task initialization
 229          *----------------------------------------------------------------------------
 230          * EXAMPLE:
 231          *----------------------------------------------------------------------------
 232          * NOTE:
 233          *----------------------------------------------------------------------------
 234          * REQUIREMENTS:
 235          *****************************************************************************/
 236          void dts_GetFer (void)
 237          {
 238   1              dts_divider();
 239   1              DTS_buffer[2] = 0x12;
 240   1              DTS_buffer[3] = 0xa3;
 241   1              DTS_buffer[4] = 0xf4;
 242   1              DTS_buffer[5] = 0x10;
 243   1      
 244   1              dts_In1mode();
 245   1              dts_In2mode();
 246   1      
 247   1      }
 248          
 249          
C51 COMPILER V8.01   DTS_TASK                                                              08/07/2006 11:16:10 PAGE 12  

 250          
 251          /*F**************************************************************************
 252          * NAME: dts_MemWriteFer
 253          *----------------------------------------------------------------------------
 254          * PARAMS:
 255          *
 256          * return:
 257          *----------------------------------------------------------------------------
 258          * PURPOSE: 
 259          *   Display task initialization
 260          *----------------------------------------------------------------------------
 261          * EXAMPLE:
 262          *----------------------------------------------------------------------------
 263          * NOTE:
 264          *----------------------------------------------------------------------------
 265          * REQUIREMENTS:
 266          *****************************************************************************/
 267          void dts_MemWriteFer (void)
 268          {
 269   1              int temp;
 270   1      
 271   1              if(Mem_add < Mem_EndAdd){
 272   2                      temp = dts_frequency;
 273   2                      temp =  temp&0x0ff;             /* sent low byte */
 274   2                      Mem_add = Mem_add + 1;
 275   2                      I2c_WriteByte (Mem_add, temp);
 276   2                      temp = dts_frequency;
 277   2                      temp = (temp>>=8 &0x0ff);       /* sent high byte */
 278   2                      Mem_add = Mem_add + 1;
 279   2                      I2c_WriteByte (Mem_add, temp);
 280   2                      }
 281   1      }
 282          
 283          /*F**************************************************************************
 284          * NAME: dts_MemWriteFer
 285          *----------------------------------------------------------------------------
 286          * PARAMS:
 287          *
 288          * return:
 289          *----------------------------------------------------------------------------
 290          * PURPOSE: 
 291          *   Display task initialization
 292          *----------------------------------------------------------------------------
 293          * EXAMPLE:
 294          *----------------------------------------------------------------------------
 295          * NOTE:
 296          *----------------------------------------------------------------------------
 297          * REQUIREMENTS:
 298          *****************************************************************************/
 299          void dts_MemReadFer (void)
 300          {
 301   1              char temp;
 302   1      
 303   1              if(Mem_add > Mem_StartAdd){
 304   2                      Mem_add = Mem_add-1;
 305   2                      temp = I2c_ReadByte(Mem_add);
 306   2                      Mem_frequency =temp &0x0ff;
 307   2                      Mem_frequency <<= 8;
 308   2                      Mem_add = Mem_add-1;
 309   2                      temp = I2c_ReadByte(Mem_add);
 310   2                      Mem_frequency |= (temp &0x0ff);
 311   2                      //if((Mem_frequency>1080)||(878<Mem_frequency))         dts_frequency =  878;
C51 COMPILER V8.01   DTS_TASK                                                              08/07/2006 11:16:10 PAGE 13  

 312   2                      }
 313   1      } 
 314          
 315          /*F**************************************************************************
 316          * NAME: dts_MemInit
 317          *----------------------------------------------------------------------------
 318          * PARAMS:
 319          *
 320          * return:
 321          *----------------------------------------------------------------------------
 322          * PURPOSE: 
 323          *----------------------------------------------------------------------------
 324          * EXAMPLE:
 325          *----------------------------------------------------------------------------
 326          * NOTE:
 327          *----------------------------------------------------------------------------
 328          * REQUIREMENTS:
 329          *****************************************************************************/
 330          void dts_MemInit (void)
 331          {
 332   1              if(DTS_Mem_Size == 10){
 333   2                      Mem_add = Mem_StartAdd;
 334   2                      dts_IntToByte (Mem_add,Mem_Fre0);
 335   2                      Mem_add = Mem_add + 0x02;
 336   2                      dts_IntToByte (Mem_add,Mem_Fre1);
 337   2                      Mem_add = Mem_add + 0x02;
 338   2                      dts_IntToByte (Mem_add,Mem_Fre2);
 339   2                      Mem_add = Mem_add + 0x02;
 340   2                      dts_IntToByte (Mem_add,Mem_Fre3);
 341   2                      Mem_add = Mem_add + 0x02;
 342   2                      dts_IntToByte (Mem_add,Mem_Fre4);
 343   2                      Mem_add = Mem_add + 0x02;
 344   2                      dts_IntToByte (Mem_add,Mem_Fre5);
 345   2                      Mem_add = Mem_add + 0x02;
 346   2                      dts_IntToByte (Mem_add,Mem_Fre6);
 347   2                      Mem_add = Mem_add + 0x02;
 348   2                      dts_IntToByte (Mem_add,Mem_Fre7);
 349   2                      Mem_add = Mem_add + 0x02;
 350   2                      dts_IntToByte (Mem_add,Mem_Fre8);
 351   2                      Mem_add = Mem_add + 0x02;
 352   2                      dts_IntToByte (Mem_add,Mem_Fre9);
 353   2                      Mem_add = Mem_StartAdd;
 354   2                      }
 355   1      }
 356          /*F**************************************************************************
 357          * NAME: dts_IntToByte
 358          *----------------------------------------------------------------------------
 359          * PARAMS:
 360          *
 361          * return:
 362          *----------------------------------------------------------------------------
 363          * PURPOSE: 
 364          *----------------------------------------------------------------------------
 365          * EXAMPLE:
 366          *----------------------------------------------------------------------------
 367          * NOTE:
 368          *----------------------------------------------------------------------------
 369          * REQUIREMENTS:
 370          *****************************************************************************/
 371          void dts_IntToByte (Byte address,int bByte)
 372          {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -