auto_pwm.rmh

来自「和picoblaze完全兼容的mcu ip core」· RMH 代码 · 共 884 行 · 第 1/3 页

RMH
884
字号
/* Symbol Table */// ISR = LABEL: 257// ISR_preserve_s0 = CONSTANT: 13// ISR_preserve_s1 = CONSTANT: 14// ISR_preserve_s2 = CONSTANT: 15// LED0 = CONSTANT: 1// LED0_sequence = CONSTANT: 16// LED1 = CONSTANT: 2// LED1_sequence = CONSTANT: 17// LED2 = CONSTANT: 4// LED2_sequence = CONSTANT: 18// LED3 = CONSTANT: 8// LED3_sequence = CONSTANT: 19// LED4 = CONSTANT: 16// LED4_sequence = CONSTANT: 20// LED5 = CONSTANT: 32// LED5_sequence = CONSTANT: 21// LED6 = CONSTANT: 64// LED6_sequence = CONSTANT: 22// LED7 = CONSTANT: 128// LED7_sequence = CONSTANT: 23// LED_port = CONSTANT: 128// LED_to_duty = LABEL: 167// PWM_channel0 = CONSTANT: 1// PWM_channel1 = CONSTANT: 2// PWM_channel10 = CONSTANT: 11// PWM_channel11 = CONSTANT: 12// PWM_channel2 = CONSTANT: 3// PWM_channel3 = CONSTANT: 4// PWM_channel4 = CONSTANT: 5// PWM_channel5 = CONSTANT: 6// PWM_channel6 = CONSTANT: 7// PWM_channel7 = CONSTANT: 8// PWM_channel8 = CONSTANT: 9// PWM_channel9 = CONSTANT: 10// PWM_duty_counter = CONSTANT: 0// UART_data = REGISTER: 15// UART_read_port = CONSTANT: 1// UART_write = LABEL: 191// UART_write_port = CONSTANT: 32// character_0 = CONSTANT: 48// character_1 = CONSTANT: 49// character_2 = CONSTANT: 50// character_3 = CONSTANT: 51// character_4 = CONSTANT: 52// character_5 = CONSTANT: 53// character_6 = CONSTANT: 54// character_7 = CONSTANT: 55// character_8 = CONSTANT: 56// character_9 = CONSTANT: 57// character_A = CONSTANT: 65// character_B = CONSTANT: 66// character_BS = CONSTANT: 8// character_C = CONSTANT: 67// character_CR = CONSTANT: 13// character_D = CONSTANT: 68// character_E = CONSTANT: 69// character_F = CONSTANT: 70// character_G = CONSTANT: 71// character_H = CONSTANT: 72// character_I = CONSTANT: 73// character_J = CONSTANT: 74// character_K = CONSTANT: 75// character_L = CONSTANT: 76// character_M = CONSTANT: 77// character_N = CONSTANT: 78// character_O = CONSTANT: 79// character_P = CONSTANT: 80// character_Q = CONSTANT: 81// character_R = CONSTANT: 82// character_S = CONSTANT: 83// character_T = CONSTANT: 84// character_U = CONSTANT: 85// character_V = CONSTANT: 86// character_W = CONSTANT: 87// character_X = CONSTANT: 88// character_Y = CONSTANT: 89// character_Z = CONSTANT: 90// character_a = CONSTANT: 97// character_b = CONSTANT: 98// character_c = CONSTANT: 99// character_colon = CONSTANT: 58// character_comma = CONSTANT: 44// character_d = CONSTANT: 100// character_divide = CONSTANT: 47// character_dollar = CONSTANT: 36// character_e = CONSTANT: 101// character_equals = CONSTANT: 61// character_exclaim = CONSTANT: 33// character_f = CONSTANT: 102// character_g = CONSTANT: 103// character_greater_than = CONSTANT: 62// character_h = CONSTANT: 104// character_i = CONSTANT: 105// character_j = CONSTANT: 106// character_k = CONSTANT: 107// character_l = CONSTANT: 108// character_less_than = CONSTANT: 60// character_m = CONSTANT: 109// character_minus = CONSTANT: 45// character_n = CONSTANT: 110// character_o = CONSTANT: 111// character_p = CONSTANT: 112// character_plus = CONSTANT: 43// character_q = CONSTANT: 113// character_question = CONSTANT: 63// character_r = CONSTANT: 114// character_s = CONSTANT: 115// character_semi_colon = CONSTANT: 59// character_space = CONSTANT: 32// character_stop = CONSTANT: 46// character_t = CONSTANT: 116// character_u = CONSTANT: 117// character_v = CONSTANT: 118// character_w = CONSTANT: 119// character_x = CONSTANT: 120// character_y = CONSTANT: 121// character_z = CONSTANT: 122// clear_loop = LABEL: 2// cold_start = LABEL: 0// delay_s0_loop = LABEL: 23// delay_s1_loop = LABEL: 22// delay_s2_loop = LABEL: 21// enable_int = LABEL: 7// go_down = LABEL: 176// go_down_loop = LABEL: 177// go_up_loop = LABEL: 171// inc_LED0 = LABEL: 35// inc_LED1 = LABEL: 54// inc_LED2 = LABEL: 71// inc_LED3 = LABEL: 88// inc_LED4 = LABEL: 105// inc_LED5 = LABEL: 122// inc_LED6 = LABEL: 144// inc_LED7 = LABEL: 158// normal_LED1 = LABEL: 48// normal_LED6 = LABEL: 138// read_character = LABEL: 185// read_from_UART = LABEL: 181// rx_data_present = CONSTANT: 4// rx_full = CONSTANT: 16// rx_half_full = CONSTANT: 8// s0 = REGISTER: 0// s1 = REGISTER: 1// s2 = REGISTER: 2// s3 = REGISTER: 3// s4 = REGISTER: 4// s5 = REGISTER: 5// s6 = REGISTER: 6// s7 = REGISTER: 7// s8 = REGISTER: 8// s9 = REGISTER: 9// sA = REGISTER: 10// sB = REGISTER: 11// sC = REGISTER: 12// sD = REGISTER: 13// sE = REGISTER: 14// sF = REGISTER: 15// send_CR = LABEL: 193// send_OK = LABEL: 251// send_space = LABEL: 196// send_to_UART = LABEL: 187// send_welcome = LABEL: 199// simple_IO10 = CONSTANT: 2// simple_IO11 = CONSTANT: 4// simple_IO12 = CONSTANT: 8// simple_IO9 = CONSTANT: 1// simple_port = CONSTANT: 64// spare1 = CONSTANT: 32// spare2 = CONSTANT: 64// spare3 = CONSTANT: 128// status_port = CONSTANT: 0// test_LED0_start = LABEL: 37// test_LED1_start = LABEL: 56// test_LED2_start = LABEL: 73// test_LED3_start = LABEL: 90// test_LED4_start = LABEL: 107// test_LED5_start = LABEL: 124// test_LED6_start = LABEL: 146// test_LED7_start = LABEL: 160// tx_full = CONSTANT: 2// tx_half_full = CONSTANT: 1// update_LED0 = LABEL: 40// update_LED1 = LABEL: 62// update_LED2 = LABEL: 79// update_LED3 = LABEL: 96// update_LED4 = LABEL: 113// update_LED5 = LABEL: 130// update_LED6 = LABEL: 149// update_LED7 = LABEL: 163// warm_start = LABEL: 20/* Program Code */// #1: ; KCPSM3 Program - Automatic Pulse Width Modulation (PWM) Control on the Spartan-3E Starter Kit.// #2: ;// #3: ; Ken Chapman - Xilinx Ltd// #4: ;// #5: ; Version v1.00 - 24th May 2006// #6: ;// #7: ; Automatically sequences the LEDs on the board using PWM to change intensity.// #8: ;// #9: ;**************************************************************************************// #10: ; Port definitions// #11: ;**************************************************************************************// #12: ;// #13: ;// #14: ;// #15: CONSTANT(LED_port,128) ;8 simple LEDs// #16: CONSTANT(LED0,1) ;     LED 0 - bit0// #17: CONSTANT(LED1,2) ;         1 - bit1// #18: CONSTANT(LED2,4) ;         2 - bit2// #19: CONSTANT(LED3,8) ;         3 - bit3// #20: CONSTANT(LED4,16) ;         4 - bit4// #21: CONSTANT(LED5,32) ;         5 - bit5// #22: CONSTANT(LED6,64) ;         6 - bit6// #23: CONSTANT(LED7,128) ;         7 - bit7// #24: ;// #25: ;// #26: CONSTANT(simple_port,64) ;4 simple outputs// #27: CONSTANT(simple_IO9,1) ;  Header  IO9  - bit0// #28: CONSTANT(simple_IO10,2) ;          IO10 - bit1// #29: CONSTANT(simple_IO11,4) ;          IO11 - bit2// #30: CONSTANT(simple_IO12,8) ;          IO12 - bit3// #31: ;// #32: ;// #33: ;// #34: CONSTANT(status_port,0) ;UART status input// #35: CONSTANT(tx_half_full,1) ;  Transmitter     half full - bit0// #36: CONSTANT(tx_full,2) ;    FIFO               full - bit1// #37: CONSTANT(rx_data_present,4) ;  Receiver     data present - bit2// #38: CONSTANT(rx_half_full,8) ;    FIFO          half full - bit3// #39: CONSTANT(rx_full,16) ;                   full - bit4// #40: CONSTANT(spare1,32) ;                  spare '0' - bit5// #41: CONSTANT(spare2,64) ;                  spare '0' - bit6// #42: CONSTANT(spare3,128) ;                  spare '0' - bit7// #43: ;// #44: CONSTANT(UART_read_port,1) ;UART Rx data input// #45: ;// #46: CONSTANT(UART_write_port,32) ;UART Tx data output// #47: ;// #48: ;// #49: ;// #50: ;**************************************************************************************// #51: ; Special Register usage// #52: ;**************************************************************************************// #53: ;// #54: NAMEREG(sF,UART_data) ;used to pass data to and from the UART// #55: ;// #56: ;// #57: ;// #58: ;**************************************************************************************// #59: ;Scratch Pad Memory Locations// #60: ;**************************************************************************************// #61: ;// #62: CONSTANT(PWM_duty_counter,0) ;Duty Counter 0 to 255 within 1KHz period (1ms)// #63: CONSTANT(PWM_channel0,1) ;PWM settings for each channel// #64: CONSTANT(PWM_channel1,2) ; Channels 0 to 7 = LEDs 0 to 7// #65: CONSTANT(PWM_channel2,3) ; Channels 8 to 11 = IO9 to IO12// #66: CONSTANT(PWM_channel3,4)// #67: CONSTANT(PWM_channel4,5)// #68: CONSTANT(PWM_channel5,6)// #69: CONSTANT(PWM_channel6,7)// #70: CONSTANT(PWM_channel7,8)// #71: CONSTANT(PWM_channel8,9)// #72: CONSTANT(PWM_channel9,10)// #73: CONSTANT(PWM_channel10,11)// #74: CONSTANT(PWM_channel11,12)// #75: CONSTANT(ISR_preserve_s0,13) ;preserve register contents during Interrupt Service Routine// #76: CONSTANT(ISR_preserve_s1,14)// #77: CONSTANT(ISR_preserve_s2,15)// #78: ;// #79: ;// #80: CONSTANT(LED0_sequence,16) ;LED sequence values// #81: CONSTANT(LED1_sequence,17)// #82: CONSTANT(LED2_sequence,18)// #83: CONSTANT(LED3_sequence,19)// #84: CONSTANT(LED4_sequence,20)// #85: CONSTANT(LED5_sequence,21)// #86: CONSTANT(LED6_sequence,22)// #87: CONSTANT(LED7_sequence,23)// #88: ;// #89: ;// #90: ;// #91: ;**************************************************************************************// #92: ;Useful data constants// #93: ;**************************************************************************************// #94: ;// #95: ;// #96: ;// #97: ;// #98: ;ASCII table// #99: ;// #100: CONSTANT(character_a,97)// #101: CONSTANT(character_b,98)// #102: CONSTANT(character_c,99)

⌨️ 快捷键说明

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